美文网首页技术栈
2019-02-27——设计模式 外观模式

2019-02-27——设计模式 外观模式

作者: 烟雨乱平生 | 来源:发表于2019-02-27 23:17 被阅读0次

    特点

    为多个复杂的子系统提供一个一致的接口,使这些子系统更加容易被访问。它让一个应用程序中子系统间的相互依赖关系减少到了最少,它给子系统提供了一个简单、单一的屏障,客户通过这个屏障来与子系统进行通信。通过使用外观模式,使得客户对子系统的引用变得简单了,实现了客户与子系统之间的松耦合。但是它违背了“开闭原则”,因为增加新的子系统可能需要修改外观类或客户端的源代码。

    外观模式又叫门面模式

    主要角色

    • 外观(Facade)角色:为多个子系统对外提供一个共同的接口。
    • 子系统(Sub System)角色:实现系统的部分功能,客户可以通过外观角色访问它。

    实现

    public class Facade {
        private SubPartA partA;
        private SubPartB partB;
        private SubPartC partC;
        public Facade(){
            partA = new SubPartA();
            partB = new SubPartB();
            partC = new SubPartC();
        }
    
        public void start(){
            partA.start();
            partB.start();
            partC.start();
        }
    }
    
    
    public class SubPartA {
        void start(){
            System.out.println("start part A");
        }
    }
    
    
    public class SubPartB {
        void start(){
            System.out.println("start part B");
        }
    }
    
    
    public class SubPartC {
        void start(){
            System.out.println("start part C");
        }
    }
    

    相关文章

      网友评论

        本文标题:2019-02-27——设计模式 外观模式

        本文链接:https://www.haomeiwen.com/subject/xgvquqtx.html