1. 概述
Java对象要调用 clone 进行复制,必须实现 Cloneable 接口,否则会抛出CloneNotSupportedException
的异常。
clone 方法默认是浅复制,如果要实现深复制,那必须在clone方法调用对象成员的复制方法。
- 浅复制:复制对象时,对象内部引用类型的成员,仍然共用内存空间。此时A对象修改这个成员的属性,B对象的该成员也会受影响。
- 深复制:复制对象时,对象内部引用类型的成员,也会重新开辟新的空间。此时A对象和B对象完全互不干扰。
2. 浅复制clone
Grade: 班级类,实现了Cloneable接口
@Data
public class Grade implements Cloneable{
//名称
private String nam