IOC设计模式的理解

抽象工厂模式代码

 产品类: 

  1. //发动机以及型号    
  2. public interface Engine {    
  3.   
  4. }    
  5. public class EngineA extends Engine{    
  6.     public EngineA(){    
  7.         System.out.println("制造-->EngineA");    
  8.     }    
  9. }    
  10. public class EngineBextends Engine{    
  11.     public EngineB(){    
  12.         System.out.println("制造-->EngineB");    
  13.     }    
  14. }    
  15.   
  16. //空调以及型号    
  17. public interface Aircondition {    
  18.   
  19. }    
  20. public class AirconditionA extends Aircondition{    
  21.     public AirconditionA(){    
  22.         System.out.println("制造-->AirconditionA");    
  23.     }    
  24. }    
  25. public class AirconditionB extends Aircondition{    
  26.     public AirconditionB(){    
  27.         System.out.println("制造-->AirconditionB");    
  28.     }    
  29. }   


创建工厂类:

  1. //创建工厂的接口    
  2. public interface AbstractFactory {    
  3.     //制造发动机  
  4.     public Engine createEngine();  
  5.     //制造空调   
  6.     public Aircondition createAircondition();   
  7. }    
  8.   
  9.   
  10. //为宝马320系列生产配件    
  11. public class FactoryBMW320 implements AbstractFactory{    
  12.         
  13.     @Override    
  14.     public Engine createEngine() {      
  15.         return new EngineA();    
  16.     }    
  17.     @Override    
  18.     public Aircondition createAircondition() {    
  19.         return new AirconditionA();    
  20.     }    
  21. }    
  22. //宝马523系列  
  23. public class FactoryBMW523 implements AbstractFactory {    
  24.     
  25.      @Override    
  26.     public Engine createEngine() {      
  27.         return new EngineB();    
  28.     }    
  29.     @Override    
  30.     public Aircondition createAircondition() {    
  31.         return new AirconditionB();    
  32.     }    
  33.   
  34.   
  35. }   

客户:

  1. public class Customer {    
  2.     public static void main(String[] args){    
  3.         //生产宝马320系列配件  
  4.         FactoryBMW320 factoryBMW320 = new FactoryBMW320();    
  5.         factoryBMW320.createEngine();  
  6.         factoryBMW320.createAircondition();  
  7.             
  8.         //生产宝马523系列配件    
  9.         FactoryBMW523 factoryBMW523 = new FactoryBMW523();    
  10.         factoryBMW320.createEngine();  
  11.         factoryBMW320.createAircondition();  
  12.     }    

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值