博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

读书笔记:简单工厂模式

Posted on 2011-04-22 10:17  寒风凌意  阅读(124)  评论(0编辑  收藏  举报

最近在看设计模式方面的书籍,把看过的一些知识点整理一下:

简单工厂模式根据提供给它的数据,返回几个可能类中的一个类的实例。通常它返回的类都有一个公共的父类和公共的方法。

比如:

类A                             类A-a:A                                类A-b:A

{                                {                                        {

一个方法Fun();               重写A类的方法Fun();              重写A类的方法Fun();

}                                }                                        }

使用的时候就只能根据需要来创建A-a类或A-b类;

也可以再写个方法,通过一个参数来标志是创建A-a类还是A-b类,些方法返回的类型为类A,

如:

类A 方法名(string a)

{

如果a为创建类A-a:就返回一个类A-a的实例

如果a为创建类A-b:就返回一个类A-b的实例

}

然后使用的时候就可以用这个方法,传个参数给他就行了。

优点是可以明确要创建哪一个类的实例。

缺点是不易于扩展。