抽象工厂模式和工厂模式的差别(原创)

抽象工厂模式和工厂模式有什么差别呢?

问这个问题的人一定没有看过这两种模式的UML图。如果看过图,就非常明白了。

唯一的一个区别是:

1. 工厂模式用来产生某一种对象(基于同一个基类)

2. 抽象工厂模式用来产生某一群对象(每一个对象通常追溯到完全不相干的基类)

 

从实现上来说,工厂类里只有一个CreateObject()方法,抽象工厂类里有多个CreateObject方法(CreateObjectA(), CreateObjectB, CreateObjectC等等,而ObjectA, ObjectB, ObjectC来自于不同的基类)

posted @ 2011-01-05 10:05  毛豆子  阅读(438)  评论(0编辑  收藏  举报