深度clone的简单实现
来源:互联网 发布:淘宝赵信翼骑统领皮肤 编辑:程序博客网 时间:2024/06/04 19:08
public class DeepClone {public static void main(String args[]) throws CloneNotSupportedException{Student student=new Student();Teacher teacher=new Teacher();student.setAge(20);student.setName("wang xue");student.setTeacher(teacher);teacher.setAge(30);teacher.setName("lucy");Student stu=(Student)student.clone();teacher.setName("lily");System.out.println(stu.getAge()+" "+stu.getName()+" "+stu.getTeacher().getName()+" "+stu.getTeacher().getAge());;}}class Teacher implements Cloneable{private int age;private String name;public int getAge() {return age;}public void setAge(int age) {this.age = age;}public String getName() {return name;}public void setName(String name) {this.name = name;}@Overridepublic Object clone() throws CloneNotSupportedException {// TODO Auto-generated method stubTeacher teacher=(Teacher)super.clone();return teacher;}}class Student implements Cloneable{private Teacher teacher;private int age;private String name;public Teacher getTeacher() {return teacher;}public void setTeacher(Teacher teacher) {this.teacher = teacher;}public int getAge() {return age;}public void setAge(int age) {this.age = age;}public String getName() {return name;}public void setName(String name) {this.name = name;}@Overridepublic Object clone() throws CloneNotSupportedException {// TODO Auto-generated method stubObject object=super.clone();//浅cloneStudent stu=(Student)object;stu.setTeacher((Teacher)stu.getTeacher().clone());//深clonereturn stu;}}
0 0
- 深度clone的简单实现
- 通过递归的方式实现深度clone
- JavaScript深度复制(deep clone)的实现方法
- JAVA 简单clone和深度clone(理论部分借鉴)
- Clone的简单使用
- 影子clone,深度clone
- 影子clone,深度clone
- java的对象与引用,影子clone与深度clone
- clone方法的实现
- Clone 方法的使用(深度克隆)
- JAVA clone的简单理解
- JS学习30:对象简单、深度克隆(复制、Clone)
- 深度图像边缘检测的简单实现
- 深度学习中简单神经网络的实现
- JAVA.CLONE: 影子clone-深度clone
- java 实现对象的clone
- 深度clone javascript
- 关于Java对象复制(Clone、深度Clone以及序列化与反序列化的使用)
- C语言 EOF是什么?
- Java多线程同步Synchronized详解
- linux查看命令
- Cocos2d_x的特点及环境配置
- js使用栈来实现10进制转8进制 js取除数 余数
- 深度clone的简单实现
- “讯飞语音+”语音识别开放功能使用方法介绍
- 每日一个知识点8 2014/6/11
- 《Linux驱动基础篇》- Linux的中断系统
- 用DEF文件从DLL中导出C++类
- 在 Linux 平台中调试 C/C++ 内存泄漏方法
- 《Linux驱动基础篇》- 1.LED灯驱动入门
- 实验2——快速排序简单实现
- Storm之trident聚合操作介绍