外观模式

1、个人理解:有时候我们要去访问很多类里面的方法会比较麻烦,就想,我可不可以只访问一次就可以访问到所有的类,这样就有了外观模式,他在类A中封装了一个方法对其它很多类B,C,D...中的方法进行访问,那么我们要访问B,C,D...类中的方法就只需要访问A中的一个方法就可以了。

2、定义:为子系统中的一组接口提供一个一致的界面,此模式定义了一个高层接口,这个接口使得这一子系统更加容易使用。

3、代码:

1)、子系统

 1 class systemOne
 2 {
 3     public void systemOneMethod() {
 4         Console.WriteLine("系统一的方法!");
 5     }
 6 }
 7 class systemTwo
 8 {
 9     public void systemTwoMethod()
10     {
11         Console.WriteLine("系统二的方法!");
12     }
13 }
14 class systemThree
15 {
16     public void systemThreeMethod()
17     {
18         Console.WriteLine("系统三的方法!");
19     }
20  }

2)外观类

 1 class Facade
 2 { 
 3    //具有所有的子系统,并作为自己的属性
 4     systemOne one;
 5     systemTwo two;
 6     systemThree three;
 7 
 8     //在构造方法中初使用这些子系统
 9     public Facade()
10     {
11         one = new systemOne();
12         two = new systemTwo();
13         three = new systemThree();
14     }
15 
16     //具有一个对所有子系统进行操作的方法
17     public void MethodAll() {
18         one.systemOneMethod();
19         two.systemTwoMethod();
20         three.systemThreeMethod();
21     }
22 
23 }

3)客户端代码

1  public static void Main() {
2         Facade f = new Facade();
3         f.MethodAll();
4     }

 

posted @ 2017-04-19 16:32  爱生活,爱代码  阅读(129)  评论(0编辑  收藏  举报