美文网首页
外观模式(facade)

外观模式(facade)

作者: 程序员不会取昵称 | 来源:发表于2019-03-19 23:34 被阅读0次

百度定义:Facade(外观)模式为子系统中的各类(或结构与方法)提供一个简明一致的界面,隐藏子系统的复杂性,使子系统更加容易使用。它是为子系统中的一组接口所提供的一个一致的界面。
总而言之就是通过新增一个类将另外几个类进行整合。对外提供一个更简洁的调用方法。

比如你想要请假,首先得需要项目经理审核,接着是总经理,最后是老板,自己一个个向他们申请。

class ProjectManager{
    void procheck(){
        System.out.println("项目经理通过");
    }
}

class GeneralManager{
    void gencheck(){
        System.out.println("总经理通过");
    }
}
class BossManager{
    void bosscheck(){
        System.out.println("老板通过");
    }
}
    public static void main(String[] args) {
        //普通调用
        new ProjectManager().procheck();
        new GeneralManager().gencheck();
        new BossManager().bosscheck();
    }

可是这样太麻烦了,这需要在main方法中调用了三个对象方法,那可不可以简化一下,只要调用一个对象方法就行了,于是外观模式就出现了。它需要你新建一个类,在这个新建的类中加一个方法整合一下这三个对象方法,之后你直接调用他的对象方法就行了。


public class Check {
    void check(){
        new ProjectManager().procheck();
        new GeneralManager().gencheck();
        new BossManager().bosscheck();
    }
}
    public static void main(String[] args) {
        //使用外观(facade)模式
        new Check().check();
    }

感觉电脑的例子更形象:(参考)
电脑整机是 CPU、内存、硬盘的外观。有了外观以后,启动电脑和关闭电脑都简化了。
直接 new 一个电脑。
在 new 电脑的同时把 cpu、内存、硬盘都初始化好并且接好线。
对外暴露方法(启动电脑,关闭电脑)。
启动电脑(按一下电源键):启动CPU、启动内存、启动硬盘
关闭电脑(按一下电源键):关闭硬盘、关闭内存、关闭CPU

相关文章

  • Android 设计模式入门到精通之十:外观模式(Facade

    外观模式(Facade Pattern,门面模式) 1. 概念 Facade Pattern: Provide a...

  • Android设计模式——外观模式(七大结构型)

    1.外观模式介绍 外观模式(Facade Pattern),是七大结构型设计模式之一。 外观模式运...

  • 外观模式(Facade)

    定义外部与一个子系统的通信必须通过一个统一的外观对象进行,为子系统中的一组接口提供一个一致的界面,外观模式定义了一...

  • 外观模式-facade

    为子系统中的一组接口提供一个一致的界面,facade模式定义了一个高层接口,这个接口使得这一子系统更加容易使用 代...

  • 外观模式(Facade)

    1、概念 外观模式是外部与一个子系统的通信必须通过一个统一的外观对象进行,为子系统中的一组接口提供一个一致的界面,...

  • 外观模式(Facade)

    外观模式(Facade),为子系统中的一组接口提供一个一致的界面,此模式定义了一个高层接口,这个接口是的这一子系统...

  • 外观模式(Facade)

    为子系统中的一组接口提供一个统一的入口。外观模式定义了一个高层接口,这个接口使得这一子系统更加容易使用。 类型 结...

  • 外观模式-Facade

    外观模式是为了解决类与类之间依赖关系的,外观模式将类间关系放在一个Facade类中,降低了类类之间的耦合度,该模式...

  • 外观模式(Facade)

    文章转自iOS设计模式:外观模式 基本概念 外观模式:为子系统的一组接口提供一个一致的界面,此模式定义一个高层接口...

  • 外观模式(facade)

    facade模式是为了简化操作,使用组合的方式提供一个统一的入口,而隐藏细节。 一般程序设计中很少使用外观模式,只...

网友评论

      本文标题:外观模式(facade)

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