原型模式Prototype Pattern
原型模式是指原型实例指定创建对象的种类,并且通过拷贝这些原型对象创建新对象。调用者不需要知道任何创建细节,不调用构造函数。
性能优良,java 自带的原型模式,是基于二进制流的拷贝,比直接 new 一个对象性能上提升了许多。
可以使用深克隆方式保存对象的状态,使用原型模式将对象复制到一份并将其状态保存起来,简化了创建过程。
实现 Cloneable 接口的都是浅克隆
public class ConcreteProtoType {
private int age;
private String name;
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public ConcreteProtoType clone()
{
ConcreteProtoType concreteProtoType = new ConcreteProtoType();
concreteProtoType.setAge(this.age);
concreteProtoType.setName(this.name);
return concreteProtoType;
}
}