【发布时间】:2013-03-12 08:24:51
【问题描述】:
我很难理解 Java 中“深拷贝”的概念。
假设我有一个包含各种参数的类“myClass”。我尝试编写一个方法“copy”,它应该返回这样的类的深层副本:
public myClass copy() {
myClass deepCopy = new myClass();
deepCopy.varA = varA;
deepCopy.varB = varB;
return deepCopy;
}
有人可以确认这是否确实是“深度复制”还是我做错了什么?
谢谢!
【问题讨论】:
-
而且你最好使用以大写字母开头的类名。
-
@Kent:但最好的解决方案建议使用构造函数,而我需要一个名为 copy 的方法(我正在扩展一个抽象类)@G-Man:
-
@DarioPanada 你可以实现 Cloneable,当然不只是
myClass还可以实现varA,B的类。你必须在你的克隆方法中处理收集案例。
标签: java