设计模式 - 门面模式
定义
要求一个子系统的外部与其内部的通信必须通过一个统一的对象进行。
简单的说。门面模式为外界访问子系统的唯一通道
栗子
子系统
public interface IClass {
public void toString();
}
public class ClassA{
public void toString(){
// 业务逻辑
}
}
public class ClassB {
public void toString(){
// 业务逻辑
}
}
public class ClassC{
public void toString(){
// 业务逻辑
}
}
上方的三个业务逻辑属于一个模块
门面对象
public class Facade {
// 被委托的对象
private IClass a = new ClassA();
private IClass b = new ClassB();
private IClass c = new ClassC();
// 提供外部的 方法
public void methingA(){
this.a.toString();
}
public void methingB(){
this.b.toString();
}
public void methingC(){
}
}
对于门面的扩展
public class Facade2 {
// 引用原门面
private Facade facade = new Facade();
// 对外提供唯一访问子系统的方法
public void methodB(){
this.facade.methodB();
}
}