1、淺拷貝
概念:子對象複製父對象,父子對象發生關聯,兩者屬性值指向同一內存空間。簡單來講,就是改變其中一個對象,另一個對象也會跟着改變。
2、深拷貝
概念:拷貝對象各個層級的屬性。簡單的講,就是複製出來的每個對象都有屬於自己的內存空間,不會互相干擾。
實現方式:
- 實現Cloneable接口,並且重寫Object類中的clone()方法
- 實現Serializable接口序列化
- 可以將對象序列化成JSON,也可以將JSON反序列化成對象,所以我們可以用它進行深拷貝。
- 相關所有對象的新建拷貝,比較繁瑣。