http://blog.csdn.net/wdwgr/archive/2009/04/08/4058065.aspx
http://bolange.javaeye.com/blog/773238
http://www.cnblogs.com/Reeezak/archive/2005/10/23/260493.html
http://www.javaeye.com/topic/18648?page=2
1.简单工厂模式simple factory
使用工厂可以将创建实例的工作与实例的使用工作分开,让创建实例所需的大量初始化工作从构造函数中分离出去。
可以使用工厂对抽象接口的子类实例化,当子类增加时,加入对该子类的实例,用工厂方法就减少了对以前代码的修改
2.工厂方法模式factory method
简单工厂模式中 每一种产品都余姚一个具体的工厂类,造成工厂过多,在工厂方法模式里,由一个抽象工厂类负责所有产品的创建,工厂方法模式允许很多具体工厂类从抽象工厂类中将创建行为继承下来,从而可以成为多个简单工厂模式的综合。
3.抽象工厂abstract factory
工厂方法模式针对的是一个产品等级结构,而抽象工厂模式针对的是多个产品等级结构
“工厂方法创建 "一种" 产品,他的着重点在于"怎么创建",也就是说如果你开发,你的大量代码很可能围绕着这种产品的构造,初始化这些细节上面。也因为如此,类似的产品之间有很多可以复用的特征,所以会和模版方法相随。
抽象工厂需要创建一些列产品,着重点在于"创建哪些"产品上,也就是说,如果你开发,你的主要任务是划分不同差异的产品线,并且尽量保持每条产品线接口一致,从而可以从同一个抽象工厂继承。”