`

设计模式(八)--外观模式

阅读更多

外观模式:提供了一个统一的接口,用来访问子系统中的一大堆接口,外观定义了一个高层接口,让子系统更容易使用。

 

意图: 让接口更加简单。

 

public interface Light {
    void on();
    void off();
    void dim();
}

 

public interface Screen {
    void up();
    void down();
}

 

public interface DvdPlayer {
    void on();
    void off();
    void pause();
}

 

 

/**
 * 外观模式类
 * Created by Administrator on 2018/1/9.
 */
public class HomeTheaterFacade {
    private Screen screen;
    private DvdPlayer dvdPlayer;
    private Light light;

    public HomeTheaterFacade(Screen screen, DvdPlayer dvdPlayer, Light light) {
        this.screen = screen;
        this.dvdPlayer = dvdPlayer;
        this.light = light;
    }

    /**
     * 外观模式,
     * 将众多复杂的子模块封装起来,提供一个统一的调用
     * **/
    public void watchMovie(){
        screen.down();
        dvdPlayer.on();
        light.dim();
    }

    public void endMovie(){
        screen.up();
        dvdPlayer.off();
        light.on();
    }

}

 

public class TestFacade {
    public static void main(String[] args) {
        // screen ,light 通过各子类实现传入构造方法
        HomeTheaterFacade homeTheaterFacade = new HomeTheaterFacade(screen,dvdplayer,light);
        homeTheaterFacade.watchMovie();
        homeTheaterFacade.endMovie();
    }
}

 

 

 

 

 

 

 

 

 

 

 

 

 

0
0
分享到:
评论

相关推荐

    设计模式--外观模式java例子

    设计模式--外观模式java例子

    设计模式专题之(十一)外观模式---设计模式外观模式示例代码(python--c++)

    设计模式专题之(十一)外观模式---设计模式外观模式示例代码(python--c++)

    C#设计模式-外观模式

    C#设计模式-外观模式

    设计模式课件大全

    设计模式09-外观模式、享元模式 设计模式10-代理模式、结构型模式大复习 设计模式11-行为模式-责任链、命令模式 设计模式12-解释器模式 设计模式13-迭代器模式 设计模式14-中介者模式、备忘录模式 设计模式15-观察者...

    JAVA-设计模式-结构型模式-外观模式

    JAVA-设计模式-结构型模式-外观模式

    设计模式-外观模式

    设计模式练习-外观模式厂-JAVA外观模式练习示例。

    java常用设计模式-外观模式

    java常用设计模式-外观模式

    设计模式--C++

    1.1 什么是设计模式 2 1.2 Smalltalk MVC 中的设计模式 3 1.3 描述设计模式 4 1.4 设计模式的编目 5 1.5 组织编目 7 1.6 设计模式怎样解决设计问题 8 1.6.1 寻找合适的对象 8 1.6.2 决定对象的粒度 9 1.6.3 指定对象...

    设计模式-外观模式(讲解及其实现代码)

    设计模式-外观模式(讲解及其实现代码)

    c++设计模式-结构型模式-外观模式

    c++设计模式-结构型模式-外观模式;qt工程;c++简单源码; 外观(Facade)模式又叫作门面模式,是一种通过为多个复杂的子系统提供一个一致的接口,而使这些子系统更加容易被访问的模式。该模式对外有一个统一接口,...

    设计模式 - 外观模式(C++实例)

    外观模式 Facade 设计模式 还请各位大S指教。

    设计模式-C++

    结构型模式,共七种:适配器模式、装饰器模式、代理模式、外观模式、桥接模式、组合模式、享元模式。 行为型模式,共十一种:策略模式、模板方法模式、观察者模式、迭代子模式、责任链模式、命令模式、备忘录模式、...

    大话设计模式之外观模式

    大话设计模式之外观模式 经典代码 C#类

    设计模式--可复用面向对象软件的基础

    1.2 Smalltalk MVC中的设计模式 1.3 描述设计模式 1.4 设计模式的编目 1.5 组织编目 1.6 设计模式怎样解决设计问题 1.7 怎样选择设计模式 1.8 怎样使用设计模式 第二章 实例研究:设计一个文档编辑器 2.1 设计问题...

    软件设计模式与体系结构(讲解+代码)

     【例3.10】外观模式-安全系统  【例3.11】外观模式-椭圆功能  【例3.13】桥接模式-茶水机系统  【例3.14】桥接模式-几何立体体积  【例4.1】迭代器模式-矩阵搜索  【例4.2】迭代器模式-产品搜索  ...

    设计模式python-design-patterns.zip

    【设计模式】 一、创建类 工厂方法模式 建造者模式 原型模式 单例模式 二、结构类 享元模式 代理模式 装饰器模式 适配器模式 桥接模式 外观模式 三、行为类 命令模式 访问者模式 责任链模式 备忘录...

    体系结构学习代码!特别详细丰富

     【例3.10】外观模式-安全系统  【例3.11】外观模式-椭圆功能  【例3.13】桥接模式-茶水机系统  【例3.14】桥接模式-几何立体体积  【例4.1】迭代器模式-矩阵搜索  【例4.2】迭代器模式-产品搜索  ...

    java设计模式-外观模式

    设计模式(Design pattern)代表了最佳的实践,通常被有经验的面向对象的软件开发人员所采用。设计模式是软件开发人员在软件开发过程中面临的一般问题的解决方案。这些解决方案是众多软件开发人员经过相当长的一段...

    设计模式之外观模式

    java的23种常用设计模式之外观模式,经典的例子解析。

    23种设计模式 -设计模式图解.7z

    结构型模式,共七种:适配器模式、装饰器模式、代理模式、外观模式、桥接模式、组合模式、享元模式。 行为型模式,共十一种:策略模式、模板方法模式、观察者模式、迭代子模式、责任链模式、命令模式、备忘录模式、...

Global site tag (gtag.js) - Google Analytics