1. 分类
2. 简介
- 迪米特法则(最少知识原则):
- 一个软件实体应当尽可能少的与其他实体发生相互作用
- 外观模式核心:
- 为子系统提供统一的入口。封装子系统的复杂性,便于客户端调用
3. 代码Demo
创建买菜过程类
public class 出门 {
public void test() {
System.out.println("出门");
}
}
public class 讲价 {
public void test() {
System.out.println("讲价");
}
}
public class 付钱 {
public void test() {
System.out.println("付钱");
}
}
public class 回家 {
public void test() {
System.out.println("回家");
}
}
创建负责买菜的类
public class 儿子买菜 {
private 出门 出门 = new 出门();
private 讲价 讲价 = new 讲价();
private 付钱 付钱 = new 付钱();
private 回家 回家 = new 回家();
public void test() {
出门.test();
讲价.test();
付钱.test();
回家.test();
System.out.println("儿子买菜完成");
}
}
创建想要获取菜的类
public class 妈妈 {
public static void main(String[] args) {
儿子买菜 儿子 = new 儿子买菜();
儿子.test();
}
}
控制台打印
出门
讲价
付钱
回家
儿子买菜完成
- 开发中常见的场景
- 频率很高。哪里都会遇到。各种技术和框架中,都有外观模式的使用,如:
- JDK封装后的,commons提供的DBUtils类,Hibernate提供的工具类、Spring JDBC工具类等
- 频率很高。哪里都会遇到。各种技术和框架中,都有外观模式的使用,如: