设计模式 - 原型模式

定义

Specify the kinds of objects to create using a prototypical instance, and create new objects by copying this prototype.

UML

实例

Clone,DataSet,

  1. 需要复制对象(结构复杂),但又独立于这些对象所属的具体类。(第三方库的对象)
  2. 创建特定类型的对象。(初始化方式不同的子类)

比较

原型模式 备注
抽象工厂 可以用原型模式生成抽象工厂的类
工厂方法 原型不基于继承,对被复制的对象进行复杂的初始化 工厂方法基于继承,不需要初始化步骤
命令模式 原型可以保存命令模式的历史纪录
组合模式 通过原型复制复杂结构 组合模式的设计,不用从零开始重新构造
装饰模式 通过原型复制复杂结构 装饰模式的设计,不用从零开始重新构造
备忘录模式 原型可以作为备忘录模式的简化版本 当备忘录的历史纪录中存储的对象状态比较简单,不需要链接其他外部资源,或者链接可以方便地重建
posted @ 2022-04-21 23:40  wesson2019  阅读(13)  评论(0编辑  收藏  举报