深拷贝(Deep Copy)和浅拷贝(Shallow Copy)是对象复制的两种方式,
它们之间的区别在于对对象内部引用类型的处理
浅拷贝(Shallow Copy) 是将一个对象复制到另一个变量中,对于基本数据类型,浅拷贝会复制它们的值;但是对于引用数据类型,浅拷贝只复制引用,而不复制引用对象本身。这意味着复制对象和原对象共享相同的内部引用对象,因此如果我们修改了复制对象中的基本类型属性,原始对象中不会受到影响,但如果修改了复制对象中的引用数据类型,原始对象对应的引用数据类型也会被修改。
深拷贝(Deep Copy) 是将一个对象及其所有子对象都复制到另一个变量中,它会创建一个全新的对象,
并将原始对象中的所有属性都复制到新对象中,因此如果我们修改了复制对象中的属性,原始对象中对应的属性不会受到影响,是一个完全独立的副本,互补影响。