1700470096
1700470097
}
1700470098
1700470099
我们认为这3个类属于近邻,处理相关的业务,因此应该被认为是一个子系统的不同逻辑处理模块,对于此子系统的访问需要通过门面进行,如代码清单23-9所示。
1700470100
1700470101
代码清单23-9 门面对象
1700470102
1700470103
public class Facade{
1700470104
1700470105
//被委托的对象
1700470106
1700470107
private ClassA a=new ClassA();
1700470108
1700470109
private ClassB b=new ClassB();
1700470110
1700470111
private ClassC c=new ClassC();
1700470112
1700470113
//提供给外部访问的方法
1700470114
1700470115
public void methodA(){
1700470116
1700470117
this.a.doSomethingA();
1700470118
1700470119
}
1700470120
1700470121
public void methodB(){
1700470122
1700470123
this.b.doSomethingB();
1700470124
1700470125
}
1700470126
1700470127
public void methodC(){
1700470128
1700470129
this.c.doSomethingC();
1700470130
1700470131
}
1700470132
1700470133
}
1700470134
1700470135
1700470136
1700470137
1700470139
设计模式之禅 23.3 门面模式的应用
1700470140
1700470141
23.3.1 门面模式的优点
1700470142
1700470143
门面模式有如下优点。
1700470144
1700470145
❑减少系统的相互依赖
[
上一页 ]
[ :1.700470096e+09 ]
[
下一页 ]