很长一段时间以来,我一直坚持这一点。
告诉我以下代码是否克隆?
class A
{
int i;
int j;
String str;
A()
{
i=10;
j=30;
str="Hello";
}
A(A a)
{
this.i=a.i;
this.j=a.j;
this.str=a.str;
}
}
class B
{
public static void main(String args[])
{
A a = new A();
A a1 = new A(a);
/* I want to make clone like this. */
}
}
当我运行此代码并打印 a 和 a1 的哈希码时,它们是不同的。但是有些朋友说这不是克隆的正确方法。你必须实现Cloneable接口,真的有必要吗?在我看来,如果我想在派生引用变量的情况下进行深层复制,这可能是一个好方法。谢谢你。