5.对象拷贝

  1. 为什么要使用克隆?
    想对一个对象进行处理,又想保留原有的数据进行接下来的操作,就需要克隆了,Java语言中克隆针对的是类的实例。

  2. 如何实现对象克隆?
    https://blog.csdn.net/moakun/article/details/82818047
    1)实现Cloneable接口并重写clone()方法
    2)实现Serializable接口,通过对象的序列化和反序列化实现克隆,可以实现真正的深度克隆。

  3. 深拷贝和浅拷贝区别是什么?

  • 浅拷贝只是复制了对象的引用地址,两个对象指向同一个内存地址,所以修改其中任意的值,另一个值都会随之变化,这就是浅拷贝(例:assign())
  • 深拷贝是将对象及值复制过来,两个对象修改其中任意的值另一个值不会改变,这就是深拷贝

你可能感兴趣的:(5.对象拷贝)