浅拷贝和深拷贝的区别是什么?
浅拷贝和深拷贝的最根本区别在于是否真正获取了一个对象的复制实体,而不是引用。
浅拷贝和深拷贝是只针对Object和Array这样的引用数据类型的。
浅拷贝:只是拷贝了基本类型的数据,而引用类型数据,复制后也是会发生引用。浅拷贝仅仅指向被复制的内存地址,如果原地址中对象被改变了,那么浅拷贝出来的对象也会相应改变
深拷贝:重新开辟一块新的内存地址用于存放复制的对象
浅拷贝出来的数据并不独立,如果被复制的对象改变了,那么浅拷贝的对象也会改变,深拷贝之后会完全独立,与浅拷贝断绝关系。