由Java经典编程300例55,56,57,总结:
要克隆就要实现cloneable接口,该接口中实现clone方法,例如:
但是需要注意的是:如果对象的成员变量中含有引用类型的成员变量,该引用类型也需要实现浅克隆,即实现cloneable接口,clone方法。如下图:
另外,如果类的成员变量比较复杂,例如使用了多个可变引用类型,使用clone方法来克隆是非常麻烦的。此时,可以考虑使用序列化来完成克隆。
时间: 2024-12-29 05:07:55
由Java经典编程300例55,56,57,总结:
要克隆就要实现cloneable接口,该接口中实现clone方法,例如:
但是需要注意的是:如果对象的成员变量中含有引用类型的成员变量,该引用类型也需要实现浅克隆,即实现cloneable接口,clone方法。如下图:
另外,如果类的成员变量比较复杂,例如使用了多个可变引用类型,使用clone方法来克隆是非常麻烦的。此时,可以考虑使用序列化来完成克隆。