面试——对象拷贝


为什么要使用克隆?

克隆的对象可能包含一些已经修改过的属性,而 new 出来对象的属性还是初始化的值,因此当需要修改一个新对象来保存当前对象的“状态”便是克隆了。


怎样实现对象克隆?

  • 实现 Cloneable 接口并重写 Object 类中的 clone() 方法。
  • 实现 Serializable 接口,通过对象的序列化与反序列化实现克隆,这样能真正实现深度克隆。

浅拷贝和深拷贝的区别是什么?

前者当对象别复制时,只是复制它本身和其中包含的值类型的成员变量,但引用类型的成员对象没有被复制;
后者是除了对象本身被复制外,对象所包括的所有成员变量也将被复制。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值