外观模式

一.外观(门面)模式

1.1 定义

二.具体实现

2.1 创建模块接口

    public interface IModule {
        void print();
    }

2.2 创建具体模块

    public class ModuleA implements IModule {
        @Override
        public void print() {
            System.out.println("moduleA print ...");
        }
    }
    public class ModuleB implements IModule {
        @Override
        public void print() {
            System.out.println("moduleB print ...");
        }
    }

2.3 创建门面对象

    public class Facade {
        private IModule moduleA = new ModuleA();
        private IModule moduleB = new ModuleB();
        public void print(){
            moduleA.print();
            moduleB.print();
        }
    }

2.4 调用

    public static void main(String[] args) {
        Facade facade = new Facade();
        facade.print();
    }

2.5 输出

    moduleA print ...
    moduleB print ...

三.优缺点

3.1 优点

  • 减少系统间相互依赖.
  • 提高安全性.

3.2 缺点

  • 不符合开闭原则,修改代码复杂.

四.源码

    https://github.com/Seasons20/DisignPattern.git

END


JadeQYuan
279 声望311 粉丝

知其然,知其所以然。。。