外观模式.

这个模式挺简单的,理念有点像组合模式,“通过一个对象的行为去操作一批对象的行为”,但实现方式上面比组合模式简单。

定义

一个高层接口,包含对各个子系统的引用,客户端可以通过这个接口访问各个子系统;

架构

外观角色、子系统

代码

在这里插入图片描述
Facade

/**
 *
 * Description:
 *          外观角色
 * @author: mushi
 * @Date: 2021/2/6 11:41
 */
public class Facade {

    private SubSystem01 subSystem01 = new SubSystem01();
    private SubSystem02 subSystem02 = new SubSystem02();

    public void method(){
        //调用子系统功能
        subSystem01.sys01();
        subSystem02.sys02();
    }

}

SubSystem01

/**
 *
 * Description:
 *              子系统角色1
 * @author: mushi
 * @Date: 2021/2/6 11:41
 */
public class SubSystem01 {

    public void sys01(){

    }

}

SubSystem02

/**
 *
 * Description:
 *              子系统角色2
 * @author: mushi
 * @Date: 2021/2/6 11:41
 */
public class SubSystem02 {

    public void sys02(){

    }

}

Test

public class Test {

    public static void main(String[] args) {
        Facade facade = new Facade();
        //通过这个角色的方法去调用子系统的功能
        facade.method();
    }

}

总结

在需要去调用一个子系统的时候使用外观模式可以减少客户端和子系统间的联系,降低耦合。有点静态代理的意思,A要调用C—C被B管理着—A调用B间接调用C;

posted @   有锦  阅读(1)  评论(0编辑  收藏  举报  
相关博文:
阅读排行:
· CSnakes vs Python.NET:高效嵌入与灵活互通的跨语言方案对比
· DeepSeek “源神”启动!「GitHub 热点速览」
· 我与微信审核的“相爱相杀”看个人小程序副业
· Plotly.NET 一个为 .NET 打造的强大开源交互式图表库
· 上周热点回顾(2.17-2.23)
点击右上角即可分享
微信分享提示