简单工厂 工厂方法 和抽象工厂的理解

简单工厂:

    实现步骤:

  •      定义产品接口   通过实现产品接口创建具体的产品类   如生产汽车配件 将汽车配件作为上级接口  然后创建轮胎类  发动机类      变速箱类实现汽车配件接口       重写 产品方法实现具体的产品类的功能
  • 在创建一个工厂类  通过工厂生产具体的产品  在工厂方法中通过switch  case方法判断生产的是哪一类产品

           

工厂方法: 

实现步骤: 

  1.      定义一个产品借口 通过实现产品接口创建出对应的产品类       将汽车配件作为产品接口   然后创建轮胎类  发动机类      变速箱类实现汽车配件接口 (本步和简单工厂没有区别)

  2.   在定义一个工厂接口   在通过实现工厂接口创建出不同的工厂类(一个个小工厂) 通过具体的工厂类生产出具体的产品 

特点:

 在需要扩展时 分别继承一个总产品接口(工厂借口)  创建一个新的产品类(工厂类)  

抽象工厂

实现步骤:

  1. 需要一个抽象工厂,里面有三个接口分别为生产轮胎、发动机、制动系统,抽象类
  2. 需要三个抽象产品分别为轮胎、发动机、制动系统,抽象接口
  3. 需要实现上面的三个抽象接口,定义出每个接口不通的对象,比如:普通轮胎和越野轮胎
  4. 需要两个具体类继承自上面的抽象类,实现具体的工厂,比如:生产Q3的工厂和生产Q7的工厂
  5. 在客户端new出对应的具体工厂并调用对应的生产方法

特点:    

多个抽象产品类 一个抽象工厂类 在工厂类接口中定义多个方法 可以生产出多种产品 (一个产品组)

 

 

      

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值