深拷贝提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档
- 前言
- 一、浅拷贝是什么?
- 二、深拷贝是什么?
- 深拷贝的几种实现方式
- 1.clone实现(最常用)
- 2.构造函数实现
- 总结
前言
提示:深拷贝与浅拷贝的本质市创建一个和一致对象一模一样的对象:本质去呗在于地址的拷贝或者是包括数据的拷贝
一、浅拷贝是什么?
浅拷贝就是拷贝引用,
例如:
Test test1 = new Test(); Test test2 = test1二、深拷贝是什么?
深拷贝的本质是拷贝出一个新的对象
深拷贝的几种实现方式 1.clone实现(最常用)调用对象的clone方法,必须让类实现Cloneable接口(告知jvm当前类可拷贝),并且重载clone方法(修改clone由protected改为public修饰)
重写clone方法 :
publicT clone(){ return (T)super.clone();//super.clone()是浅拷贝 }
实现对象的clone:
T t = new T(); t t2 = t.clone();//会返回一个全新的对象2.构造函数实现
代码如下 :
T t = new T(属性1,属性2,属性3); T t1 = new T(t.属性1,t.属性2,t.属性3);
总结
提示:这里对文章进行总结:
本文仅仅简单介绍了深浅拷贝的关系与其实现方式,欢迎大家补充



