定义:为子系统中的一组接口提供一个一致的界面,些模式定义一个高层接口,这个接口使得这一子系统更加容易使用。
结构图:
示例代码:
public class SubSytemOne {
public void methodOne() {
System.out.println("子系统方法一");
}
}
public class SubSystemTwo {
public void methodTwo() {
System.out.println("子系统方法二");
}
}
public class SubSystemThree {
public void methodThree() {
System.out.println("子系统方法三");
}
}
public class SubSystemFour {
public void methodFour() {
System.out.println("子系统方法四");
}
}
public class Facade {
private SubSytemOne one;
private SubSystemTwo two;
private SubSystemThree three;
private SubSystemFour four;
public Facade() {
one = new SubSytemOne();
two = new SubSystemTwo();
three = new SubSystemThree();
four = new SubSystemFour();
}
public void methodA() {
System.out.println("调用 方法组A");
one.methodOne();
two.methodTwo();
four.methodFour();
}
public void methodB() {
System.out.println("调用方法组B");
two.methodTwo();
three.methodThree();
}
}
客户端代码:
public class Client {
public static void main(String[] args) {
Facade facade = new Facade();
facade.methodA();
facade.methodB();
}
}
输出结果:
调用方法组A
子系统方法一
子系统方法二
子系统方法四
调用方法组B
子系统方法二
子系统方法三