外观(Facade)模式

1 外观模式:为子系统中的一组接口提供一个统一接口。Facade模式定义了一个高层接口,这个接口使得这子系统更容易使用。

 1 public class Class1 {
 2     public void method1(){….}
 3 } 
 4 
 5 public class Class2 {
 6     public void method2(){….}
 7 } 
 8 
 9 public class Class3 {
10     public void method3(){….}
11 } 
12 public class Class4 {
13     public void method4(){….}
14 }  
假如客户程序要使用Class1、Class2、Class3,Class4完成一项业务功能
 1 public class ClientNoFacade {
 2   public void methodA() {//完成第一项业务功能
 3        Class1 c1 = new Class1();
 4        c1.method1();
 5        Class2 c2 = new Class2();
 6        c2.method2();
 7        Class3 c3 = new Class3();
 8        c3.method3();
 9        Class4 c4 = new Class4();
10        c4.method4();
11   }

测试:

1 public class Test {
2 
3     public static void main(String[] args) {
4          ClientNoFacade cnf= new ClientNoFacade();
5          cnf.methodA();
6     }
7 
8 }

这个模式还是很简单的!

他的适用情况呢:

1)为一个复杂子系统提供一个简单接口。

2)提高子系统的独立性。

3)在层次化结构中,可以使用Facade模式定义系统中每一层的入口。

 
 
 
原文地址:https://www.cnblogs.com/hellokitty1/p/4656391.html