java深复制和浅复制
2015-03-04 15:34
204 查看
在java中,复制也是就clone()方法,在使用过程中根据业务的需要会有深复制和浅复制之分.那到底什么时候用深复制什么时候用浅复制,以及怎么实现呢?得从复制的概念一起总结一下:
概念:
1,浅复制
所有复制对象的所有变量都有与原对象相同的值,引用对象指向原来的对象.(默认继承object,没有实现clone()方法的类为浅复制).
2,深复制
所有复制对象的所有变量都有与原对象相同的值,与浅复制的区别是引用对象指向新对对象.
注意:
object的clone()方法是深复制,所以在继承object,实现clone()方法时要调用super.clone(),此类会进行深复制,相反如果直接继承属于浅复制.
概念:
1,浅复制
所有复制对象的所有变量都有与原对象相同的值,引用对象指向原来的对象.(默认继承object,没有实现clone()方法的类为浅复制).
2,深复制
所有复制对象的所有变量都有与原对象相同的值,与浅复制的区别是引用对象指向新对对象.
注意:
object的clone()方法是深复制,所以在继承object,实现clone()方法时要调用super.clone(),此类会进行深复制,相反如果直接继承属于浅复制.
相关文章推荐
- JAVA 如何创建/删除/修改/复制目录及文件
- Java 理论与实践: Web 层的状态复制
- JAVA中浅复制与深复制(1)
- JAVA 如何创建/删除/修改/复制目录及文件 3in1
- JAVA中浅复制与深复制
- JAVA中浅复制与深复制概念详细解析
- JAVA中浅复制与深复制(3)
- java笔记----文件复制
- java中的浅复制与深复制
- Java 理论与实践: Web 层的状态复制
- JAVA文件复制
- JAVA中浅复制与深复制
- Java IO 实现文件复制 -Java 学习笔记 (25)
- JAVA中浅复制与深复制
- JAVA 如何创建\删除\修改\复制目录及文件
- java中文件复制得速度测试
- 用"堆栈区数据复制"理解Java赋值和参数传递机制的心得
- JAVA中浅复制与深复制(2)
- JAVA中浅复制与深复制
- 用”堆栈区数据复制”理解Java赋值和参数传递机制的心得