Heim > Java > JavaErste Schritte > Was ist der Unterschied zwischen Deep Copy und Shallow Copy in Java?

Was ist der Unterschied zwischen Deep Copy und Shallow Copy in Java?

王林
Freigeben: 2020-07-04 16:58:34
nach vorne
3321 Leute haben es durchsucht

Was ist der Unterschied zwischen Deep Copy und Shallow Copy in Java?

Differenzanalyse:

(Empfohlenes Lernen: Java-Einführungsprogramm)

Flache Kopie

Alle Variablen des kopierten Objekts enthalten dieselben Werte wie das Originalobjekt und Referenzen von allen anderen Objekten verweisen weiterhin auf das Originalobjekt.

Mit anderen Worten: Eine flache Kopie kopiert nur das betrachtete Objekt, nicht die Objekte, auf die sie verweist.

Tiefe Kopie

Alle Variablen des kopierten Objekts enthalten dieselben Werte wie das Originalobjekt, mit Ausnahme der Variablen, die auf andere Objekte verweisen. Variablen, die auf andere Objekte verweisen, verweisen auf das kopierte neue Objekt, nicht auf die ursprünglich referenzierten Objekte.

Mit anderen Worten, Deep Copy kopiert alle Objekte, auf die das kopierte Objekt verweist.

(Empfohlenes Video-Tutorial: Java-Video-Tutorial )

Definieren Sie eine Klasse wie folgt:

class Test {
    public int i;
    public StringBuffer s;
}
Nach dem Login kopieren

Die folgende Abbildung zeigt das Kopieren von Objekten davon Klasse Wann, der Unterschied zwischen flacher Kopie und tiefer Kopie:

Was ist der Unterschied zwischen Deep Copy und Shallow Copy in Java?

Das obige ist der detaillierte Inhalt vonWas ist der Unterschied zwischen Deep Copy und Shallow Copy in Java?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Verwandte Etiketten:
Quelle:csdn.net
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage