设计模式学习(三)抽象工厂

来源:互联网 发布:会展构图的软件 编辑:程序博客网 时间:2024/06/04 18:46

意图:

提供一个创建一系列相关或相互依赖对象的接口,而无需指定它们具体的类

适用性:

一个系统要独立于它的产品的创建,组合和表示时

一个产品要由多个产品系列中的一个来配置时

当你要强调一系列相关的产品对象的设计以便进行联合使用时

当你提供一个产品类库,而只想显示它们的接口而不是实现时

代码示例:

 

MazeFactory 是一个完全由工厂方法组成的具体的类,通过生产一个子类并重新定义需要改变的操作,很容易生产一个新的MazeFactory.

创建迷宫的类MazeGame的创建迷宫的方法CreateMaze将MazeFactory作为一个参数,这样就可以很方便的指定需要创建哪一类型的房间,门和墙

 

原创粉丝点击