1 public class Facade { 2 3 public static void main(String[] args) { 4 Facade1 f = new Facade1(); 5 f.ab(); 6 f.cd(); 7 } 8 } 9 //外观类10 class Facade1 {11 12 private A a;13 private B b;14 private C c;15 private D d;16 public Facade1() {17 a = new A();18 b = new B();19 c = new C();20 d = new D();21 }22 public void ab(){23 System.out.println("执行第一组方法");24 a.startA();25 b.startB();26 }27 public void cd() {28 System.out.println("执行第二组方法");29 c.startC();30 d.startD();31 }32 33 }34 class A{35 public void startA() {36 System.out.println("A");37 }38 }39 class B{40 public void startB() {41 System.out.println("B");42 } 43 }44 class C{45 public void startC() {46 System.out.println("C");47 } 48 }49 class D{50 public void startD() {51 System.out.println("D");52 } 53 }
输出:
执行第一组方法
A B 执行第二组方法 C D