首頁  >  文章  >  Java  >  java中深複製與淺複製有什麼差別

java中深複製與淺複製有什麼差別

王林
王林轉載
2020-07-04 16:58:343316瀏覽

java中深複製與淺複製有什麼差別

區別分析:

(推薦學習:java入門程式

淺複製

#被複製物件的所有變數都含有與原來物件相同的值,而所有其他物件的參考仍然指向原來的物件。

換言之,淺複製僅僅複製所考慮的對象,而不複製它所引用的對象。

深複製

被複製物件的所有變數都含有與原來物件相同的值,除去那些引用其他物件的變數。那些引用其他對象的變數將指向被複製的新對象,而不再是原有的那些被引用的對象。

換言之,深複製把複製的物件所引用的物件都複製了一遍。

(影片教學推薦:java影片教學

定義如下一個類別:

class Test {
    public int i;
    public StringBuffer s;
}

下圖展示了對這個類別的物件進行複製時,淺複製與深複製的差異:

java中深複製與淺複製有什麼差別

#

以上是java中深複製與淺複製有什麼差別的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文轉載於:csdn.net。如有侵權,請聯絡admin@php.cn刪除