关于Java克隆
我一直在寻找一些讲解Java的教程Cloneable
,但没有获得任何良好的链接,无论如何,Stack Overflow变得越来越明显。
我想知道以下内容:
Cloneable
意味着我们可以通过实现Cloneable
接口来获得对象的克隆或副本。这样做的优点和缺点是什么?- 如果对象是复合对象,则如何进行递归克隆?
回答:
你应该了解的第一件事Cloneable
-不要使用它。
Cloneable
正确地进行克隆非常困难,而且付出的努力是不值得的。
而不是使用其他一些选项,例如apache-commons SerializationUtils(deep-clone)
或BeanUtils(shallow-clone
),或仅使用复制构造函数。
有关 Josh Bloch关于使用克隆的观点,请参见此处Cloneable
,这解释了该方法的许多缺点。(Joshua Bloch是Sun的雇员,并领导了许多Java功能的开发。)
以上是 关于Java克隆 的全部内容, 来源链接: utcz.com/qa/397449.html