抽象工厂模式
抽象工厂模式是工厂方法模式的进一步推广:
1 //抽象CPU接口 2 interface CPU{ 3 public void method(); 4 } 5 6 //具体CPU类 7 class CPUA implements CPU{ 8 9 @Override 10 public void method() { 11 //业务代码 12 } 13 14 } 15 16 class CPUB implements CPU{ 17 18 @Override 19 public void method() { 20 //业务代码 21 } 22 23 } 24 25 //抽象主板接口 26 interface Mainboard{ 27 public void method(); 28 } 29 30 //具体主板类 31 class MainboardA implements Mainboard{ 32 33 @Override 34 public void method() { 35 //业务代码 36 } 37 38 } 39 40 class MainboardB implements Mainboard{ 41 42 @Override 43 public void method() { 44 //业务代码 45 } 46 47 } 48 49 //抽象工厂接口 50 interface Factory{ 51 public CPU createCPU(); 52 public Mainboard createMainboard(); 53 } 54 55 //具体工厂类 56 class AFactory implements Factory{ 57 58 @Override 59 public CPU createCPU() { 60 return new CPUA(); 61 } 62 63 @Override 64 public Mainboard createMainboard() { 65 return new MainboardA(); 66 } 67 68 } 69 70 class BFactory implements Factory{ 71 72 @Override 73 public CPU createCPU() { 74 return new CPUB(); 75 } 76 77 @Override 78 public Mainboard createMainboard() { 79 return new MainboardB(); 80 } 81 82 }