java 深拷贝实现 重写Object的clone方法
程序员文章站
2022-05-20 09:40:30
...
public class Test02 {
public static void main(String[] args) {
Student student = new Student("238");
try {
Student student1 = student.clone();
System.out.println(student.getName());
System.out.println(student1.getName());
System.out.println("是否一样" + (student == student1 ? true : false));
} catch (CloneNotSupportedException e) {
e.printStackTrace();
}
}
}
//实现Cloneable,不写会抛异常
class Student implements Cloneable {
private String name;
public Student(String name) {
this.name = name;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
//方法公开
@Override
public Student clone() throws CloneNotSupportedException {
return (Student) super.clone();
}
}
推荐阅读
-
详解java中的深拷贝和浅拷贝(clone()方法的重写、使用序列化实现真正的深拷贝)
-
JavaScript实现浅拷贝与深拷贝的方法分析
-
一种c#深拷贝方式完胜java深拷贝(实现上的对比分析)
-
JS实现数组深拷贝的方法分析
-
Java中实现引用类型集合的深拷贝(for循环遍历+BeanUtils)
-
javascript深拷贝的原理与实现方法分析
-
jQuery使用$.extend(true,object1, object2);实现深拷贝对象的方法分析
-
荐 java父类-Object类-equals与==-方法的重载和重写-游离块-this关键字
-
Java的深拷贝与浅拷贝的几种实现方式
-
JS中的两种数据类型及实现引用类型的深拷贝的方法