我想知道以下内容:

  • 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/

    10-14 12:33