using System; using System.Collections.Generic; using System.Linq; using System.Text; namespace MotherBoardModel { /*外观模式:为子系统中的一组接口提供一个一致的界面,此模式定义了一个高层接口 此接口使得子系统更加容易使用*/ class SubClassOne { public void OneMethod() { Console.WriteLine("我是第一个类方法"); } } class SubClassTwo { public void TwoMethod() { Console.WriteLine("我是第2个类方法"); } } class SubClassThree { public void ThreeMethod() { Console.WriteLine("我是第3个类方法"); } } //外观类 //外观类需要了解所有子类的方法,属性 //这样方便外界调用 class Facade { SubClassOne Subone; SubClassTwo subTwo; SubClassThree subThree; public Facade() { Subone = new SubClassOne(); subTwo = new SubClassTwo(); subThree = new SubClassThree(); } //方法1 public void Method1() { Console.WriteLine("执行方法1..."); Subone.OneMethod(); subTwo.TwoMethod(); } //方法2 public void Method2() { Console.WriteLine("执行方法2..."); Subone.OneMethod(); subTwo.TwoMethod(); subThree.ThreeMethod(); } } class Main1 { static void Main() { Facade F = new Facade(); F.Method1(); } } }