我想知道以下内容:
Cloneable
意味着我们可以拥有对象的克隆或副本,通过实现
Cloneable
接口(interface)。有什么优点和这样做的坏处?
复合对象?
最佳答案
你应该知道的关于 Cloneable
的第一件事是 - 不要使用它。
用 Cloneable
正确实现克隆是非常困难的,努力是不值得的。
而不是使用其他一些选项,比如 apache-commons SerializationUtils
(深度克隆)或 BeanUtils
(浅克隆),或者简单地使用复制构造函数。
See here 是 Josh Bloch 关于使用 Cloneable
进行克隆的观点,这解释了该方法的许多缺点。 ( Joshua Bloch 是 Sun 员工,并领导了许多 Java 功能的开发。)
关于java - Cloneable 在 Java 中如何工作以及如何使用它?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/4081858/