我们通过外观的包装,使应用程序只能看到外观对象,而不会看到具体的细节对象,这样无疑会降低应用程序的复杂度,并且提高了程序的可维护性。
Facade.java
public class Facade {
private SubSystemOne subSystemOne;
private SubSystemTwo subSystemTwo;
private SubSystemThree subSystemThree;
public Facade(){
this.subSystemOne=new SubSystemOne();
this.subSystemTwo=new SubSystemTwo();
this.subSystemThree=new SubSystemThree();
}
public void MethodA(){
subSystemOne.MethodOne();
subSystemThree.MethodThree();
}
public void MethodB(){
subSystemTwo.MethodTwo();
subSystemThree.MethodThree();
}
}
SubSystemOne.java
public class SubSystemOne {
public void MethodOne(){
System.out.println("子系统方法一");
}
}
SubSystemTwo
public class SubSystemTwo {
public void MethodTwo(){
System.out.println("子系统方法二");
}
}
SubSystemThree
public class SubSystemThree {
public void MethodThree(){
System.out.println("子系统方法二");
}
}
Client.java
public class Client {
public static void main(String args[]){
Facade facade=new Facade();
facade.MethodA();
facade.MethodB();
}
}