你应该了解的第一件事Cloneable
-不要使用它。
Cloneable
正确地进行克隆非常困难,而且付出的努力是不值得的。
而不是使用其他一些选项,例如apache-commons SerializationUtils(deep-clone)
或BeanUtils(shallow-clone
),或仅使用复制构造函数。
有关 Josh Bloch关于使用克隆的观点,请参见此处Cloneable
,这解释了该方法的许多缺点。(Joshua Bloch是Sun的雇员,并领导了许多Java功能的开发。)