原型模式 模式引入 问题描述 设想我们需要给不同时间点的自己写三份简历,此时姓名和性别等信息是不变的,只有年龄和工作经历(工作经历包含时间区间和公司名称的属性)有稍许变化。 进行多次实例化,会降低性能。如果能在克隆基础上,做少许更改就好了! 模式定义 是创建型模式的一种。它用原型实例指定创建对象的种类,并通过拷贝这些原型创建新的对象。 通过复制一个已存在的实例,返回新的实例(没有新建实例),原型指被复制的实例; 实现克隆操作,必须实现 Cloneable接口。 问题分析 客户端代码,在生成三份简历时,应当避免多次执行初始化操作。 一般在初始化信息不发生变化的情况下,克隆是较好的方法。它既隐藏了对象创建的细节,又提升了性能。 浅复制和深复制: (1) 浅复制:可以复制值类型;