对象的克隆
来源:互联网 发布:java asm 编辑:程序博客网 时间:2024/05/22 13:11
实体类Teacher
public class Teacher implements Cloneable{private String name ;public Teacher(String name) { this.name = name ;}public String getName() { return name;}public void setName(String name) { this.name = name;}@Overridepublic Teacher clone() throws CloneNotSupportedException { return (Teacher)super.clone();}}
实体类Student
public class Student implements Cloneable{private String name ;private int age ;private Teacher teacher ;public Student(String name, int age, Teacher teacher) {this.name = name ;this.age = age ;this.teacher = teacher ;}@Overridepublic Student clone() throws CloneNotSupportedException {Student copy = null ;copy = (Student)super.clone();copy.teacher = this.teacher.clone();return copy ;}public String getName() {return name;}public void setName(String name) {this.name = name;}public int getAge() {return age;}public void setAge(int age) {this.age = age;}public Teacher getTeacher() {return teacher;}public void setTeacher(Teacher teacher) {this.teacher = teacher;}}
测试程序
public class CloneTest {/*** @param args*/public static void main(String[] args) {Student student = new Student("wujinbo",20,new Teacher("Hello"));try {Student copy = student.clone();//更改数据源的数据student.setName("冷漠");student.setAge(100);student.getTeacher().setName("Hi");//查看两份数据的差异System.out.println(student.getName()+"-->"+copy.getName());System.out.println(student.getAge()+"-->"+copy.getAge());System.out.println(student.getTeacher().getName()+"-->"+copy.getTeacher().getName());} catch (CloneNotSupportedException e) {e.printStackTrace();}}}
- 对象克隆的分析
- php对象的克隆
- 对象的克隆(clone)
- js对象的克隆
- 对象的克隆
- 对象的克隆(clone)
- java对象的克隆
- java对象的克隆
- java对象的克隆
- java 对象的克隆
- C++对象的克隆
- 对象的克隆clone
- 对象的克隆
- JAVA对象的克隆
- 实现对象的克隆
- 对象的克隆
- Java对象的克隆
- JAVA对象的克隆
- 方向的转变
- 对象的序列化与反序列化
- List Box 控件的水平滚动
- PHP代码优化之缓存
- TR1 tuple的用法
- 对象的克隆
- 项目经理修炼之道(1) -- 给软件开发建模
- PHP代码优化之细节优化
- 在Windows Phone中进行3D开发之十三阳光
- 润滑脂与润滑油的区别
- 《新飞飞》网游服务器架构设计
- 项目经理修炼之道(2) -- 必须读的书
- mysql日期和时间格式转换
- 第七章 图形程序设计