外观(门面)模式(Facade Pattern)

外观模式提供了一个统一的接口,用来访问子系统中的一群接口,外观定义了一个高层接口,让子系统更容易使用。

假设某业务需要执行A、B、C三个步骤

步骤A
/**
 * @description
 * @since 2020-09-30 14:07
 */
public class StepA {
    public void a(){
        System.out.println("first");
    }
}

步骤B

/**
 * @description 步骤B
 * @since 2020-09-30 14:07
 */
public class StepB {
    public void b() {
        System.out.println("second");
    }
}

步骤C

/**
 * @description 步骤C
 * @since 2020-09-30 14:07
 */
public class StepC {
    public void c() {
        System.out.println("third");
    }
}

外观模式

/**
 * @description 外观模式对三个步骤进行统一调用
 * @since 2020-09-30 14:20
 */
public class FacadeStep {
    public void stepFacade() {
        StepA stepA = new StepA();
        StepB stepB = new StepB();
        StepC stepC = new StepC();
        stepA.a();
        stepB.b();
        stepC.c();
    }
}
外观模式测试
/**
 * @description 测试
 * @since 2020-09-30 14:21
 */
public class TestFacade {
    public static void main(String[] args) {
        // 正常调用
        StepA stepA = new StepA();
        StepB stepB = new StepB();
        StepC stepC = new StepC();
        stepA.a();
        stepB.b();
        stepC.c();

        // 使用外观模式调用
        FacadeStep facadeStep = new FacadeStep();
        facadeStep.stepFacade();
    }
}
调用结果
调用结果
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。