结构图:
实现:
1 class SubClass1 2 { 3 public void methodOne() 4 { 5 System.out.println("子系统方法一"); 6 } 7 } 8 9 class SubClass2 10 { 11 public void methodTwo() 12 { 13 System.out.println("子系统方法二"); 14 } 15 } 16 17 class SubClass3 18 { 19 public void methodThree() 20 { 21 System.out.println("子系统方法三"); 22 } 23 } 24 25 public class Facade { 26 SubClass1 one; 27 SubClass2 two; 28 SubClass3 three; 29 30 public Facade() 31 { 32 one = new SubClass1(); 33 two = new SubClass2(); 34 three = new SubClass3(); 35 } 36 37 public void methodA() 38 { 39 System.out.println("方法组A"); 40 one.methodOne(); 41 three.methodThree(); 42 } 43 public void methodB() 44 { 45 System.out.println("方法组B"); 46 two.methodTwo(); 47 three.methodThree(); 48 } 49 50 public static void main(String[] args) 51 { 52 Facade f = new Facade(); 53 f.methodA(); 54 f.methodB(); 55 } 56 }
应用场景:
外观模式为系统中的一组结构提供了一个一致的接口,这一接口是子系统更容易使用。