什么是门面模式
门面模式又称外观模式.提供了一个统一的接口用来访问子系统的一群接口.主要特征是提供了一个高层接口,让子系统更容易使用,属于结构型模式。
门面模式符合最少知道原则,封装内部实现逻辑,就像自己盖房子和找包工头盖房子肯定自己盖房子比较麻烦,自己找人、找沙、沙水泥等等等等。直接把钱给包工头自己甩锅。
UML图
代码案例
package facade;
public class Facade {
private SubSystemA a = new SubSystemA();
private SubSystemB b = new SubSystemB();
private SubSystemC c = new SubSystemC();
//对外接口
public void doA(){
a.doA();
}
//对外接口
public void doB(){
b.doB();
}
//对外接口
public void doC(){
c.doC();
}
}
package facade;
public class SubSystemA {
public void doA(){
System.out.println("doing A stuff");
}
}
package facade;
public class SubSystemB {
public void doB(){
System.out.println("doing B stuff");
}
}
package facade;
public class SubSystemC {
public void doC(){
System.out.println("doing C stuff");
}
}
package facade;
public class FacadeTest {
public static void main(String[] args) {
Facade facade = new Facade();
facade.doA();
facade.doB();
facade.doC();
}
}