博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
结构模式 01-外观模式(facade)
阅读量:5863 次
发布时间:2019-06-19

本文共 1349 字,大约阅读时间需要 4 分钟。

Facade模式的定义: 外观模式隐藏系统的复杂性,并向客户端提供了一个客户端可以访问系统的接口,它向现有的系统添加一个接口,来隐藏系统的复杂性。

我们将创建一个 Shape 接口和实现了 Shape 接口的实体类。下一步是定义一个外观类 ShapeMaker。ShapeMaker 类使用实体类来代表用户对这些类的调用

Shape:形状接口Circle:Shape实现类,圆Rectangle:Shape实现类,矩形Square:Shape实现类,正方形ShapeMaker:形状创造类复制代码

Shape接口代码

public interface Shape {    void draw();}复制代码

Circle类代码

public class Circle implements Shape {    @Override    public void draw() {        System.out.println("circle");    }}复制代码

Rectangle类代码

public class Rectangle implements Shape {    @Override    public void draw() {        System.out.println("rectangle");    }}复制代码

Square类代码

public class Square implements Shape {    @Override    public void draw() {        System.out.println("square");    }}复制代码

ShapeMaker类代码

public class ShapeMaker {    private Circle circle;    private Rectangle rectangle;    private Square square;    public ShapeMaker() {        this.circle = new Circle();        this.rectangle = new Rectangle();        this.square = new Square();    }    public void drawCircle() {        circle.draw();    }    public void drawRectangle() {        rectangle.draw();    }    public void drawSquare() {        square.draw();    }}复制代码

ShapeMaker使用

ShapeMaker maker = new ShapeMaker();        maker.drawCircle();        maker.drawRectangle();        maker.drawSquare();复制代码

转载于:https://juejin.im/post/5bc824f5e51d450e894e7661

你可能感兴趣的文章
xshell十大技巧
查看>>
做为技术人员为什么要写博客
查看>>
实验:不同网段DHCP(VM)
查看>>
使用U盘自制Linux操作系统
查看>>
js 获取域名和页面完整地址
查看>>
零成本搭建WDS轻量级系统批量部署环境视频课程
查看>>
JavaScript原型和闭包(极好的一篇帖子)
查看>>
使用rsync+inotify配置触发式(实时)远程同步
查看>>
详解DNS递归查询与迭代查询
查看>>
RPM 命名规则
查看>>
linux入门小知识,你在里面总会有发现
查看>>
如何将shell的变量当命令执行
查看>>
import 导入模块学习
查看>>
文件下载路径
查看>>
Oracle 通过JDBC访问Clob字段时,当长度=4193时,出现异常,无法正常读取
查看>>
多网卡的7种bond模式原理
查看>>
套接字编程 --- UDP协议
查看>>
我的友情链接
查看>>
vMwaer vSphere Client无法连接vCenter Server问题
查看>>
我的友情链接
查看>>