全站数据
8 4 2 0 5 8 1

工厂模式和抽象工厂模式的本质区别是什么

理想途聊考研 | 简单学习,快乐成才!         
问题更新日期:2024-11-01 05:27:42

问题描述

工厂模式和抽象工厂模式的本质区别是什么,麻烦给回复
精选答案
最佳答案

工厂方法模式的本质是通过继承,在需要工厂的类中,存在一个工厂函数,在派生类中进行扩写和修改,进而达到不同工厂的目标。抽象工厂模式的本质是组合,在需要工厂的类中,增加一个抽象工厂的对象(一个包含各种工厂函数的接口),在不同情况下修改对象进而达到不同工厂的目标。

r 其实抽象工厂模式中包含了工厂方法模式,定义一个抽象工厂的接口,然后通过一系列派生来实现接口,这就是工厂方法模式。

r 至于很多回答中提到的工厂方法模式生产一个对象,抽象工厂模式生产多个对象,这并不是两个模式的本质区别。难道抽象工厂接口中只定义一个创造函数,就是工厂方法模式吗?

r