对图示中的内容稍微简化了一些 , 大致思路是一样的 .
实现接口Shape , 重写 draw方法 . namespace DesignPattern { //接口 Shape public interface Shape { void draw(); } //正方形 Square public class Square : Shape { public void draw() { Console.WriteLine("画正方形"); } } //圆形 Circle public class Circle : Shape { public void draw() { Console.WriteLine("画圆形"); } } 创建一个 Maker 外观类 , 对外提供接口 , 对内隐藏实现细节 . //外观类 public class Maker { private Shape square; private Shape circle; public Maker() { square = new Square(); circle = new Circle(); } //画正方形 public void drawSquare() { square.draw(); } //画圆形 public void drawCircle() { circle.draw(); } } 实例化外观类 ( Maker ) , 调用 Maker里的接口 . //外观模式 public class FacadePattern { static void Main() { //实例化 外观类 Maker maker = new Maker(); //调用绘制方法 maker.drawCircle(); maker.drawSquare(); } } }