美文网首页
设计模式-工厂模式<二>

设计模式-工厂模式<二>

作者: coolzpw | 来源:发表于2018-06-14 14:06 被阅读7次

今天来学习下工厂方法模式.

工厂方法模式与简单工厂模式最大区别在于,工厂方法抽象了一个定义生产产品的工厂接口,具体产品的创建推迟到工厂类的子类(具体工厂)中,此时工厂类不再负责所有产品的创建.这样就避免了简单工厂模式所暴露出来的一些问题.

下面来具体看看代码~

  • 类关系图:


    TIM图片20180614135918.png
  • 设计步骤:
    步骤1: 创建抽象工厂类,定义具体工厂的公共接口;
    步骤2: 创建抽象产品类 ,定义具体产品的公共接口;
    步骤3: 创建具体产品类(继承抽象产品类) & 定义生产的具体产品;
    步骤4:创建具体工厂类(继承抽象工厂类),定义创建对应具体产品实例的方法;
    步骤5:外界通过调用具体工厂类的方法,从而创建不同具体产品类的实例

  • 总结:
    工厂模式可以说是简单工厂模式的进一步抽象和拓展,在保留了简单工厂的封装优点的同时,让扩展变得简单,让继承变得可行,增加了多态性的体现。缺点就是增加一个产品时会额外增加代码量.

(学习文章 :https://blog.csdn.net/carson_ho/article/details/52343584)

相关文章

  • 设计模式-工厂模式<二>

    今天来学习下工厂方法模式. 工厂方法模式与简单工厂模式最大区别在于,工厂方法抽象了一个定义生产产品的工厂接口,具体...

  • 设计模式<工厂模式>

    设计模式<工厂模式> 类图 意图 定义一个具有相同行为的接口A,建立一个工厂类,对实现了A接口的一些类进行实例的创...

  • 设计模式-工厂模式<三>

    抽象模式就不具体介绍.主要要理解两个概念.(1) 产品等级结构:产品等级结构即产品的继承结构,如一个抽象类是电视机...

  • 设计模式-工厂模式<一>

    工厂模式 该模式实现了创建者和调用者的分离,它的核心思想是在实例化对象时,用工厂的方法代替new操作,将选择实现类...

  • 设计模式四、抽象工厂模式

    系列传送门设计模式一、单例模式设计模式二、简单工厂模式设计模式三、工厂模式设计模式四、抽象工厂模式 抽象工厂模式 ...

  • 设计模式三、工厂模式

    系列传送门设计模式一、单例模式设计模式二、简单工厂模式设计模式三、工厂模式设计模式四、抽象工厂模式 工厂模式 在一...

  • 设计模式一、单例模式

    系列传送门设计模式一、单例模式设计模式二、简单工厂模式设计模式三、工厂模式设计模式四、抽象工厂模式 简单单例(推荐...

  • iOS设计模式(三)之抽象工厂模式

    设计模式系列传送门 iOS设计模式(一)之简单工厂模式iOS设计模式(二)之工厂模式iOS设计模式(三)之抽象工厂...

  • iOS设计模式(一)之简单工厂模式

    设计模式系列传送门 iOS设计模式(一)之简单工厂模式iOS设计模式(二)之工厂模式iOS设计模式(三)之抽象工厂...

  • iOS设计模式(二)之工厂模式

    设计模式系列传送门 iOS设计模式(一)之简单工厂模式iOS设计模式(二)之工厂模式iOS设计模式(三)之抽象工厂...

网友评论

      本文标题:设计模式-工厂模式<二>

      本文链接:https://www.haomeiwen.com/subject/qadreftx.html