23种设计模式之原型模式
案例
public class PrototypeDemo implements Cloneable{
private String name;
public PrototypeDemo(){}
public PrototypeDemo(String name){
this.name = name;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public Object clone() throws CloneNotSupportedException {
return (PrototypeDemo)super.clone();
}
}
public class PrototypeTest {
public static void main(String[] args) throws CloneNotSupportedException {
PrototypeDemo prototype = new PrototypeDemo("tom");
System.out.println("prototype1:" + prototype.getName());
prototype.setName("jack");
PrototypeDemo prototype2 = (PrototypeDemo) prototype.clone();
System.out.println("prototype2:" + prototype2.getName());
}
}