我有一个要求,我需要从现有对象生成Object。我无法选择使用clone()或copy()的方法。
情况是用户单击按钮说复制/克隆我需要生成具有现有员工数据的新Employee对象。
提前致谢
答案 0 :(得分:1)
在定义类时使用Clonable接口,创建一个返回类型为Object
的克隆函数,此函数将抛出CloneNotSupportedException
并返回克隆:
public class YourClass implements Cloneable{
@Override
protected Object clone() throws CloneNotSupportedException {
return super.clone();
}
}
并在创建对象时,使用克隆函数,如下所示:
YourClass obj = new YourClass();
YourClass objCopy = (YourClass) obj.clone();
以下是您可以从中受益的reference。
修改强>
您也可以使用复制构造函数,这是一种比克隆更好的方法:
class YourClass {
private String dummy;
public YourClass (YourClass another) {
this.dummy = another.dummy;
}
}
您的电话
YourClass class1 = new YourClass();
YourClass clone = new YourClass(class1);