CoboCards App FAQ & Wünsche Feedback
Sprache: Deutsch Sprache
Kostenlos registrieren  Login

Zu dieser Karteikarte gibt es einen kompletten Satz an Karteikarten. Kostenlos!

Alle Oberthemen / Informatik / Java / Java
83
Was sind die Unterschiede zwischen flacher Kopie und tiefer Kopie?
Flache Kopie:
•Zuweisungsoperator (=) kopiert lediglich Verweis auf Feld, nicht den Inhalt
•Beispiel:
char[] film = { 'a', 'v', 'a', 't', 'a', 'r'};
char[] spiel = film;

•Beide Referenzvariablen (film und spiel) verweisen auf selbes Objekt und den selben Speicherbereich
•Änderungen am Feld über eine Referenz beeinflussen Inhalt für beide Referenzen!

Tiefe Kopie:
•Um eine "echte" Kopie zu erstellen, muss elementweise kopiert werden.
•Dazu muss mit new-Operator neuer Speicherbereich reserviert werden!
•Änderungen an Original haben keine Auswirkungen auf Kopie.
•Beispiel:
char[] film = { 'a', 'v', 'a', 't', 'a', 'r'};
char[] spiel = new char[6];

for (int i = 0; i < spiel.length; i++) {
spiel[i] = film[i];
}
Tags: Felder, VL04
Quelle:
Neuer Kommentar
Karteninfo:
Autor: P-H-I-L
Oberthema: Informatik
Thema: Java
Veröffentlicht: 13.04.2010

Abbrechen
E-Mail

Passwort

Login    

Passwort vergessen?
Deutsch  English