你还可以使用构造来完成。
下例为HashMap的clone的实现:
public Object clone() {
HashMap result = null;
try {
result = (HashMap)super.clone();
} catch (CloneNotSupportedException e) {
// assert false;
}
result.table = new Entry[table.length];
result.entrySet = null;
result.modCount = 0;
result.size = 0;
result.init();
result.putAllForCreate(this); return result;
}
下例为HashMap的clone的实现:
public Object clone() {
HashMap result = null;
try {
result = (HashMap)super.clone();
} catch (CloneNotSupportedException e) {
// assert false;
}
result.table = new Entry[table.length];
result.entrySet = null;
result.modCount = 0;
result.size = 0;
result.init();
result.putAllForCreate(this); return result;
}
public class A implement Cloneable
{ public Object clone()
{
try
{
A cloned=(A)super.clone();
cloned.obj=(B)obj.clone();
return cloned;
}
catch (CloneNotSupportException e) {return null;}
}}
你看这样可以了吗?