美文网首页
外观模式(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

    相关文章

      网友评论

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

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