java淺複製和深複製

以前寫了數組的複製,因此這裏繼續總結一下淺複製和深複製。html

淺拷貝:對基本數據類型進行值傳遞,對引用數據類型進行引用傳遞般的拷貝。java

深拷貝:對基本數據類型進行值傳遞,對引用數據類型,建立一個新的對象,並複製其內容。git

先來看看淺拷貝:github

定義一個People類,裏面有一個地址的Address類數組

Address類:測試

寫個測試類:htm

輸出:對象

能夠看到這樣拷貝的Address對象仍是原來的那一個。blog

咱們能夠使用cloneable接口實現深拷貝。接口

輸出:

咱們還能夠序列化的方式,複製一個對象。固然序列化的方式不少

輸出:

好比我能夠使用Json

git:https://github.com/woshiyexinjie/java-godliness

參考:

https://www.cnblogs.com/plokmju/p/7357205.html

https://www.cnblogs.com/chenssy/p/3308489.html

相關文章
相關標籤/搜索