clone之深浅

1.clone()

是Object类中的一个方法,可以实现对象的克隆。(区别于赋值只能赋值引用)

2.浅克隆与深克隆

浅克隆就是能够克隆本对象,但本对象中的对象引用仍然指向原来的对象。

深克隆,除了克隆本对象,还会克隆本对象中的其他对象引用。

3.实现方式

实现克隆需要实现Clonable接口,并重写clone()方法。

浅克隆

只需要调用super方法即可。即默认的克隆就是浅克隆。

深克隆

要考虑对象中的属性:

1.基本数据类型就不用说了,自动实现深克隆

2.String类型没有clone方法(为啥?),可以通过重新new一个String实现深克隆。

3.其他对象引用也必须实现clonable接口并重写clone,并在本clone方法中实现对象引用的克隆。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 1 场景问题# 1.1 订单处理系统## 考虑这样一个实际应用:订单处理系统。 现在有一个订单处理的系统,里面有个...
    七寸知架构阅读 4,514评论 3 63
  • 1. Java基础部分 基础部分的顺序:基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法,线程的语...
    子非鱼_t_阅读 31,764评论 18 399
  • 1大同小异的工作周报 Sunny软件公司一直使用自行开发的一套OA (Office Automatic,办公自动化...
    justCode_阅读 1,181评论 0 3
  • 这是我第二次到中国的西南部,很久前就规划了这次出游,原本想带着一颗在城市中浮躁的心去静逸的南边洗涤一下,可不曾想,...
    猫格拉底阅读 511评论 0 1
  • 一个伟岸的身影 穿过夕阳下的街道 高傲 狂放 扬起头颅 挺起胸膛 眼神犀利 昂首阔步 对周围不削一顾 黑亮的毛发散...
    蒙山小道阅读 298评论 2 1