public abstract class AbstractMonkey implements Cloneable {
// 本类相当于在孙悟空内部,他自造自己的一个地方
public Object clone() {
Object o = null;
try {
o = super.clone();
} catch (CloneNotSupportedException e) {
e.printStackTrace();
}
return o;
}
public abstract void dothing();
}
public class RealMonkey extends AbstractMonkey {
public void dothing() {
System.out.println("克隆好了真是的自己!去打仗了!");
}
}
public class Test {
public static void main(String[] agrs) {
AbstractMonkey a1 = new RealMonkey();
AbstractMonkey a2 = (AbstractMonkey) a1.clone();
AbstractMonkey a3 = (AbstractMonkey) a1.clone();
// AbstractMonkey a3 = (AbstractMonkey) a2.clone();
// 这里通过 a2 克隆自己也行,说明 a2 已经是一个真实在内
存中的对象了
a1.dothing();
a2.dothing();
a3.dothing();
}
}