您的位置:首页 > 其它

结构型模式-外观

2015-01-15 10:38 351 查看
结构图



模式说明

扩展点在SubSystem集合。增加一个具体的子系统后,可能但不一定需要修改Façade外观类。
客户端需要知道具体哪一个Façade外观类。
客户端不需要关系到底哪个SubSystem类负责Façade外观类的何种任务。
外子系统中的一组接口提供一个一致的界面,外观模式定义了一个高层接口,这个接口使得这一子系统更加容易使用。

客户端

public static void main(String[] args) {
Facade facade = new Facade();
facade.methodA();
facade.methodB();
}


类设计

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();
three.methodThree();
}

public void methodB() {
two.methodTwo();
four.methodFour();
}
}
public class SubSystemOne {
public void methodOne() {
System.out.println("method one");
}
}
public class SubSystemTwo {
public void methodTwo() {
System.out.println("method two");
}
}
public class SubSystemThree {
public void methodThree() {
System.out.println("method three");
}
}
public class SubSystemFour {
public void methodFour() {
System.out.println("method four");
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: