java中的深拷贝和浅拷贝、Object类中的clone()

概念

  • 浅拷贝:复制基本数据类型的值,以及实例对象的引用地址,拷贝出来的对象,内部类属性指向的是同一个对象
  • 深拷贝:即会拷贝基本数据类型的值,也会针对实例对象的引用地址所指向的对象进行复制,拷贝出来的对象,内部类属性指向的不是同一个对象。

Object类中的clone()方法。

默认是浅拷贝,如果需要使用对象拷贝方法,那么对象必须实现Cloneable接口,
如果要使用深拷贝,需要重写clone方法
特殊情况:
在对象内部属性是String、Integet这样的不可变对象时,使用浅拷贝拷贝出来的对象是一样的,但是如果修改了其中一个对象的String对象,那么就变成了两个不同的对象。

posted @ 2023-06-19 10:42  一个苦逼的23届毕业生  阅读(57)  评论(0)    收藏  举报