1.浅拷贝:原理:实现类的复制,并且复制类的指向原类同一内存地址。
2.深拷贝:原理:一个类复制另外一个类的情况,复制的数据重新生成一个新的类。并且复制类与类地址不相同
方法:类实现Cloneable接口,重写clone方法,返回Object
public class Spoon implements Cloneable { public void disp(){ System.out.println("这个spoon"); } public Object clone(){ Object object = null; try { object = super.clone(); } catch (CloneNotSupportedException e) { e.printStackTrace(); } return object; } }public class SpoonDemo { public static void main(String[] args) { Spoon spoon = new Spoon(); spoon.disp(); Spoon spoon1 = (Spoon) spoon.clone(); spoon1.disp(); System.out.println(spoon == spoon1); System.out.println(spoon.equals(spoon1)); Spoon spoon2 = spoon; spoon2.disp(); System.out.println(spoon == spoon2); } }