外观模式隐藏系统的复杂性,并向客户端提供了一个客户端可以访问系统的接口。这种类型的设计模式属于结构型模式,它向现有的系统添加一个接口,来隐藏系统的复杂性。
外观模式的实现
假设我们解决一个问题需要经过设计、建模、运行三个阶段,我们使用外观模式来隐藏这三个阶段,只给用户提供一个解决问题的接口。
1. 创建设计类
//设计
public class Design {
public void design(){
System.out.println("一:设计");
}
}
2. 创建模型类
//建模
public class Model {
public void model(){
System.out.println("二:建模");
}
}
3. 创建运行类
//运行
public class Run {
public void run(){
System.out.println("三: 运行");
}
}
4. 创建外观类
public class Facade {
private Design design = new Design();
private Model model = new Model();
private Run run = new Run();
public void method(){
design.design();
model.model();
run.run();
System.out.println("问题解决了");
}
}
5. 使用外观类解决问题
public class FacadeMain {
public static void main(String[] args) {
Facade facade = new Facade();
facade.method();
}
}
- 什么是设计模式:【每天一个java设计模式(零)】 - 设计模式基本概念及七大设计原则
- 工厂模式:【每天一个java设计模式(一)】 - 工厂模式
- 抽象工厂模式: 【每天一个java设计模式(二)】 - 抽象工厂模式
- 单例模式:【每天一个java设计模式(三)】 - 单例模式
- 原型模式:【每天一个java设计模式(四)】 - 原型模式
- 建造者模式: 【每天一个java设计模式(五)】 - 建造者模式
- 适配器模式 : 【每天一个java设计模式(六)】 - 适配器模式
- 代理模式: 【每天一个java设计模式(七)】 - 代理模式模式
- 桥接模式:【每天一个java设计模式(八)】 - 桥接模式
- 装饰器模式:【每天一个java设计模式(九)】 - 装饰器模式
下一节:
享元模式:【每天一个java设计模式(十一)】 - 享元模式