一、外观模式
1.外观模式定义:为子系统的一组接口提供一个一致的界面,此模式定义了一个高层接口,这个接口使得这个字系统更加容易使用。
2.外观模式UML
3.外观模式示例
class SubSystemOne{
public void methodOne(){
System.out.println("子系统方法一");
}
}
class SubSystemTwo{
public void methodTwo(){
System.out.println("子系统方法二");
}
}
class SubSystemThree{
public void methodThree(){
System.out.println("子系统方法三");
}
}
class SubSystemFour{
public void methodFour(){
System.out.println("子系统方法四");
}
}
/**
* 外观类,为系统中一组子系统类提供一个一致的界面,客户端不必与每个子系统打交道,只用与当前外观类打交道即可
* 何时使用:1.设计初级阶段层分离 2.开发阶段,子系统会不断重构变得复杂,增加外观facade可以提供一个简单
* 的接口,减少他们之间的依赖 3.维护一个遗留的大型系统时,为新系统开发一个外观facade,新系统与facade交互,
* facade与遗留代码交互
* @author shier
*
*/
public class Facade {
private SubSystemOne one;
private SubSystemTwo two;
private SubSystemThree three;
private SubSystemFour four;
public Facade() {
one = new SubSystemOne();
two = new SubSystemTwo();
three = new SubSystemThree();
four = new SubSystemFour();
}
public void methodA(){
one.methodOne();
two.methodTwo();
}
public void methodB(){
three.methodThree();
four.methodFour();
}
}