美文网首页
设计模式之外观模式

设计模式之外观模式

作者: chuan_bai | 来源:发表于2021-03-26 14:53 被阅读0次

外观模式(Facade Pattern)隐藏系统的复杂性,并向客户端提供了一个客户端可以访问系统的接口。这种类型的设计模式属于结构型模式,它向现有的系统添加一个接口,来隐藏系统的复杂性。

这种模式涉及到一个单一的类,该类提供了客户端请求的简化方法和对现有系统类方法的委托调用。

抽象接口
/**
 * @Author: chuan.bai
 * @Description  脸的抽象类 包含 耳朵 鼻子 眼睛等
 * @Date: Created on 13:35 2021/3/26
 * @Modified By:
 */
public interface Face {
    //使用的抽象方法
    void  use();

}

具体每个抽象类具体的时间
/**
 * @Author: chuan.bai
 * @Description
 * @Date: Created on 13:37 2021/3/26
 * @Modified By:
 */
public class Eye implements Face{
    @Override
    public void use() {
        System.out.println("Eye.use");
    }
}
/**
 * @Author: chuan.bai
 * @Description
 * @Date: Created on 13:37 2021/3/26
 * @Modified By:
 */
public class Ear implements  Face{
    @Override
    public void use() {
        System.out.println("Ear.use");
    }
}

/**
 * @Author: chuan.bai
 * @Description
 * @Date: Created on 13:37 2021/3/26
 * @Modified By:
 */
public class Nose implements Face{
    @Override
    public void use() {
        System.out.println("Nose.use");
    }
}

外观类
/**
 * @Author: chuan.bai
 * @Description 外观类
 * @Date: Created on 13:40 2021/3/26
 * @Modified By:
 */
public class FaceMaker {

    private Face ear;
    private Face eye;
    private Face nose;

    public FaceMaker() {
        ear = new Ear();
        eye = new Eye();
        nose = new Nose();
    }

    public void useEar() {
        ear = new Ear();
        ear.use();
    }

    public void useEye() {
        eye = new Ear();
        eye.use();
    }

    public void useNose() {
        nose = new Nose();
        nose.use();
    }


}
客户端
/**
 * @Author: chuan.bai
 * @Description
 * @Date: Created on 13:43 2021/3/26
 * @Modified By:
 */
public class Client {

    public static void main(String[] args) {
        FaceMaker faceMaker = new FaceMaker();
        faceMaker.useEar();
        faceMaker.useNose();
        faceMaker.useEye();
    }
}

输出
Ear.use
Nose.use
Ear.use

Process finished with exit code 0

相关文章

  • 设计模式之 外观模式

    概述 UML类图 代码栗子 总结 概述概念 外观模式又叫做门面模式,提供一个更方便,高层接口,使用一致性的界面使得...

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

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

  • 设计模式[9]-外观模式-Facade Pattern

    1. 外观模式 外观模式(Facade Pattern),又称为门面模式,是非常常用的结构性设计模式。外观模式使得...

  • java设计模式-外观模式(Facade)

    外观模式,属于结构性模式。属于设计模式里面比较简单的设计模式,本人认为是最简单的设计模式。 所谓外观,就是我们能看...

  • 了解外观模式

    java 设计模式 ------外观模式 Java中一共有23种设计模式,每种设计模式各有特...

  • 设计模式之-4.外观模式

    每看一次设计模式,感觉每一个设计模式看起来是那么简单,对于外观模式我的理解就是外观模式:外观模式,这个名字起得不怎...

  • 设计模式详解——外观模式

    本篇文章介绍一种设计模式——外观模式。本篇文章内容参考《JAVA与模式》之门面模式,外观模式,深入浅出外观模式(二...

  • Java设计模式之——外观模式

    前言 在简述外观模式前,先看个生活中的例子: 程序员小明到了结婚的年龄,但是由于程序员对于泡妹子这件事来说,咳咳,...

  • 设计模式之七——外观模式

    原文传送门 1 介绍 外观模式又称为门面模式,它是一种对象结构型模式。外观模式是迪米特法则的一种具体实现,通过引入...

  • 外观模式(Facede)

    本文参考自: 《JAVA设计模式》之外观模式(Facade) 1. 作用 外观模式也叫门面模式,门面模式是对象的结...

网友评论

      本文标题:设计模式之外观模式

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