设计模式之工厂模式

Posted wangweiminll

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了设计模式之工厂模式相关的知识,希望对你有一定的参考价值。

简单工厂模式:

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

产品的抽象类:

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

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

 

程序如下:

 

 

 

 

工厂方法模式:

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

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

抽象工厂模式:

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

以上是关于设计模式之工厂模式的主要内容,如果未能解决你的问题,请参考以下文章

JAVA设计模式之工厂模式(三种工厂模式)

设计模式之工厂方法模式

设计模式之抽象工厂模式

设计模式之工厂方法模式

设计模式之工厂方法模式

设计模式之工厂模式