文章列表
浅clone: 调用Object类中clone()方法是先在内存中开辟一块和原始对象一样的空间,然后原样拷贝原始对象中的内容。对基本数据类型,这样的操作是没有问题的,但对非基本类型变量,我们知道它们保存的仅仅是对象的引用,这也导致clone后的非基本类型变量和原始对象中相应的变量指向的是同一个对象。
深度clone: 例如,有一个对象A,在某一时刻A中已经包含了一些有效值,此时可能会需要一个和A完全相同新对象B,并且此后对B任何改动(包括基本类型和非基本类型)都不会影响到A中的值,也就是说,A与B是两个独立的对象,但B的初始值是由A对象确定的。
实现深度clone,一般来说只要对要clo ...