原型模式(Prototype)
意图:
用原型实例指定创建对象的种类,并且通过拷贝这些原型创建新的对象。
适用性:
当一个系统应该独立于它的产品创建、构成和表示时,要使用原型模式:
1)当要实例化的类是运行时刻指定时,例如,通过动态装载
2)为了避免创建一个与产品类层次平行的工厂类时
3)当一个类的实例只能有几个不同状态组合中的一种时。建立响应数目
的原型并克隆它们可能比每次用合适的状态手工实例化改类更方便一
些
效果:
1)运行时刻增加和删除产品
2)改变值以指定新对象
3)改变结构以指定新对象
4)减少子类的构造
5)用类动态配置应用
实现:
1)使用一个原型管理器
2)实现克隆操作
意图:
用原型实例指定创建对象的种类,并且通过拷贝这些原型创建新的对象。
适用性:
当一个系统应该独立于它的产品创建、构成和表示时,要使用原型模式:
1)当要实例化的类是运行时刻指定时,例如,通过动态装载
2)为了避免创建一个与产品类层次平行的工厂类时
3)当一个类的实例只能有几个不同状态组合中的一种时。建立响应数目
的原型并克隆它们可能比每次用合适的状态手工实例化改类更方便一
些
效果:
1)运行时刻增加和删除产品
2)改变值以指定新对象
3)改变结构以指定新对象
4)减少子类的构造
5)用类动态配置应用
实现:
1)使用一个原型管理器
2)实现克隆操作
3)初始化克隆对象