您的位置首页百科知识

工厂模式,简单工厂模式,抽象工厂模式三者有什么区别

工厂模式,简单工厂模式,抽象工厂模式三者有什么区别

的有关信息介绍如下:

工厂模式、简单工厂模式、抽象工厂模式三者的区别:

1、创建对象不同。创建对象时,“工厂模式”使用Factory模式替代使用new创建对象;“简单工厂模式”使用fw模式建立对象;“抽象工厂模式”则使用迭代模式创建对象。

工厂模式,简单工厂模式,抽象工厂模式三者有什么区别

2、定义变量不同。“工厂模式”不用事先定义变量,使用时随时引用便可。“简单工厂模式”,使用参数或者配置文件等事先定义好的变量,然后利用分支判断初始化具体产品类并返回。“抽象工厂模式则”不符合“开发-封闭”原则,每次增加产品,都需要修改类方法。

工厂模式,简单工厂模式,抽象工厂模式三者有什么区别

3、接口数量不同。“工厂模式”有两至三个接口。“简单工厂模式”只有一个接口。抽象工厂模式理论上具有无限个接口。

工厂模式,简单工厂模式,抽象工厂模式三者有什么区别

扩展资料

编程使用“工厂模式”的优缺点:

1、优点:

方便扩展算法,比如增加一个开根号的功能,我们只要继续继承运算类就行了,同时客户端也就是使用者不知道具体的实现细节,只要给出相关标示符,工厂函数就马上给他创建一个他想要的实体就行了。减少了使用者和功能开发者之间的耦合度。

2、缺点:

在进行扩展的时候,我们要更改工厂函数里面的那个分支语句Switch,这样便破坏了OCP,而且当有多级结构继承的时候,简单工厂就会因为只能对应平行一层记得继承,不得不使得好多类继承同一个接口,然后得到A*B这么多的工厂实体可能,工厂函数很难维护。

参考资料来源:百度百科--工厂模式