[Java101 基礎篇] 三張圖 搞懂 Shallow Copy 以及 Deep Copy

前言
有些時候,我們會需要將資料(物件) 覆製一份,
方便獨立操作 ~ 卻發現結果跟想像的不一樣。

 

讓我們從程式碼來做個說明~

Sample Code

一個正常的物件  Person p = new Person();

Object Structure
單一物件的結構

 

Shadow Copy

java101_referenceCopy
有二個參考點(References)指到同一份資料

Deep Copy

Deep Copy Result
二個完全獨立的物件

對了~

對參考點的概念(Reference) 還不是很清楚?!
對建構子的運用 還想更進一步嗎?!           可以參考我們提供的教育訓練

 

參考資料:
https://dzone.com/articles/java-copy-shallow-vs-deep-in-which-you-will-swim

 

Facebook Comments