您的位置:首页 > 其它

简单工厂,工厂方法和抽象工厂的区别

2011-08-22 09:56 351 查看
工厂创建一种产品,抽象工厂创建的是一组产品,是一个产品系列。这里要注意的是“系列”的意思,也就是说,抽象工厂创建出的一组产品是成套的。

工厂模式(Factory Method Pattern)

系统中需要一个对象,但是有多种类型,或将来很可能需要修改,而且此时还不能决定哪一种类型,这时的做法:

1、为上述所需创建的对象定义一个抽象父类,所有不同类型均继承该抽象父类;

2、在系统中定义一个创建该对象的接口(此接口不一定抽象,可以有默认类型),这个接口可以由系统子类 来具体实现,即上述对象的实现推迟到了子类当中。

3、这样就使得系统中可以针对抽象父类的接口编码,而不依赖于具体类;

类图:



抽象工厂模式(Abstract Factory Pattern)

提供一个“接口”(interface或一个抽象父类,里面有一系列用于 创建对象或设定一些值的其他作用 的接口函数),用于创建相关或依赖对象的家族,用户根据这些抽象接口来编程,而不需要明确指定具体类。

类图:

http://topic.csdn.net/u/20100813/16/0e9b4a8b-0111-4376-9075-8e4afb631ca0.html

http://www.cnblogs.com/cwj-0122/articles/1267954.html
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: