定义
用原型实例制定穿件对象的类型,并拷贝这个原型来创建对象。
含义
一个操作或是一个对象在创建一个制定的对象的时候,无需知道该对象的创建过程,根据所给的原型对象拷贝出所需的对象。
使用
因为java语言中有clone()方法,所以实现起来很容易。
例子
public abstract class AbstractPrototype implements Cloneable
{
String name;
public void setName(String Name) {this.name = name;}
public String getName() {return this.name;}
public Object clone()
{
Object object = null;
try {
object = super.clone();
} catch (CloneNotSupportedException exception) {
System.err.println("AbstractPrototype is not Cloneable");
}
return object;
}
}
public class SoupPrototype extends AbstractPrototype
{
public SoupPrototype()
{
setName("Soup Prototype");
}
}
public class SaladPrototype extends AbstractPrototype
{
public SaladPrototype()
{
setName("Salad Prototype");
}
}
调用就很简单了
AbstractPrototype soup = new SoupPrototype();
AbstractPrototype salad = new SaladPrototype();
SoupPrototype soupClone = (SoupPrototype)soup.clone();
SaladPrototype saladClone = (SaladPrototype)salad.clone();
这两个克隆出来的对象就是你想要的了 是不是很简单呀。