抽象工厂模式(Abstract Factory Pattern)
主要的目的是它能隔离要生成的具体类,这些类的实际类名隐藏在工厂中,客户端根本可以不需要知道。当要返回一系列相关类中的某一个,而每个类都能根据需要返回不同的对象时,可以使用该模式。
实际例子可以引用汽车制造厂,我们希望丰田汽车厂完全使用丰田的配件,而福特汽车厂完全使用福特的配件,就可以把每个汽车制造厂设想为抽象工厂,配件作为一组相关的类。
静态图
![](https://www.cnblogs.com/images/cnblogs_com/jiekeng/2006-11-28.gif)
意图
提供一个创建一系列相关或相互依赖对象的接口,而无需指定它们具体的类。
适用性
1、一个系统要独立于它的产品的创建、组合和表示时。
2、一个系统要由多个产品系列中的一个来配置时。
3、 当你要强调一系列相关的产品对象的设计以便进行联合使用时。
4、当你提供一个产品类库,而只想显示它们的接口而不是实现时。
源码+Visio
实际例子可以引用汽车制造厂,我们希望丰田汽车厂完全使用丰田的配件,而福特汽车厂完全使用福特的配件,就可以把每个汽车制造厂设想为抽象工厂,配件作为一组相关的类。
静态图
![](https://www.cnblogs.com/images/cnblogs_com/jiekeng/2006-11-28.gif)
意图
提供一个创建一系列相关或相互依赖对象的接口,而无需指定它们具体的类。
适用性
1、一个系统要独立于它的产品的创建、组合和表示时。
2、一个系统要由多个产品系列中的一个来配置时。
3、 当你要强调一系列相关的产品对象的设计以便进行联合使用时。
4、当你提供一个产品类库,而只想显示它们的接口而不是实现时。
源码+Visio
posted on 2006-11-28 22:09 jiekengxu 阅读(3001) 评论(1) 编辑 收藏 举报