码迷,mamicode.com
首页 > 其他好文 > 详细

《Head First 设计模式》之工厂模式

时间:2017-02-24 19:44:07      阅读:125      评论:0      收藏:0      [点我收藏+]

标签:设计模式   img   actor   创建   技术分享   委托   9.png   new   抽象类   

工厂模式(Factory)

  • 依赖倒置原则(Dependency Inversion Principle):依赖抽象,不要依赖具体类。
  1. 变量不可以持有具体类的引用。(如果使用new,就会持有具体类的引用。可以改用工厂来避开这样的做法。)
  2. 不要让类派生自具体类。(如果派生自具体类,就会依赖具体类。请派生自一个抽象(接口或抽象类))
  3. 不要覆盖类中已实现的方法。
  • 要点
  1. 所有的工厂都是用来封装对象的创建
  2. 工厂方法使用继承:把对象的创建委托给子类,子类实现工厂方法来创建对象。
  3. 抽象工厂使用对象组合:对象的创建被实现在工厂接口所暴露出来的方法中。
  4. 所有工厂模式都通过减少应用程序和具体类之间的依赖促进松耦合。

 

1. 简单工厂

技术分享

 


 

2. 工厂方法模式

  ——定义了一个创建对象的接口,但由子类决定要实例化的类是哪一个。工厂方法让类把实例化推迟到子类。

技术分享

 


 

3. 抽象工厂模式

  ——提供一个接口,用于创建相关或依赖对象的家族,而不需要明确指定具体类。

技术分享

 

技术分享

 

技术分享

 

《Head First 设计模式》之工厂模式

标签:设计模式   img   actor   创建   技术分享   委托   9.png   new   抽象类   

原文地址:http://www.cnblogs.com/-1307/p/6439796.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!