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

设计模式之工厂模式

时间:2018-01-01 23:30:25      阅读:132      评论:0      收藏:0      [点我收藏+]

标签:工厂方法模式   需要   选择   blog   扩展性   抽象工厂模式   成员变量   方法   产品   

简单工厂模式:

简单工厂类:内有一个产品抽象类型的成员变量,控制着生产具体产品的逻辑(switch-case语句)

产品的抽象类:

具体的产品类:继承或实现了产品的抽象类(接口)。

举例来说,有生产手机(产品的抽象类)的工厂(简单工厂),工厂需要根据(相关负责人)传来的命令来决定是生产小米手机还是苹果手机(这个工厂有点像富士康)。这个小米手机和苹果手机就是手机的具体类。关于UML图示:

 

程序如下:

 

 

 

 

工厂方法模式:

与简单工厂相比多了工厂类的抽象,工厂类不再有控制有生产具体产品的逻辑,根据需要的产品选择对应的具体的工厂。

在简单工厂里增加判断逻辑,不利用程序的维护下,扩展性,比如,要加一个生产华为手机的选择,只能修改简单工厂类的实现。此时,对简单工厂类进行修改,

抽象工厂模式:

相比工厂方法模式,产品多了系列的概念。

设计模式之工厂模式

标签:工厂方法模式   需要   选择   blog   扩展性   抽象工厂模式   成员变量   方法   产品   

原文地址:https://www.cnblogs.com/gulingjingguai/p/8169031.html

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