Factory Method
此页面描述了和之间的一个重要区别Abstract Factory
:
http://architects.dzone.com/articles/factory-method-vs-abstract
根据这个页面,区别在于Factory Method
模式中的Creator
(即创建新对象的实体)和Client
(即使用 的实体Creator
)是同一个类。更准确地说,这个模式只定义了一个方法,所以类的其余部分是Client
. 然而Abstract Factory
, theCreator
和 theClient
是单独的类。的Creator
唯一目的是创建对象所以只有一个单独的类可以Client
。
这种区分正确吗?如果是这样,为什么不能将其中的Creator
方法Factory Method
放在单独的类中?它会产生任何问题吗?Creator
同样,为什么 中的类不能与中的类Abstract Factory
相同Client
?这会产生任何问题吗?