CoboCards App FAQ & Wishes Feedback
Language: English Language
Sign up for free  Login

This flashcard is just one of a free flashcard set. See all flashcards!

All main topics / 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
Source:
New comment
Flashcard info:
Author: P-H-I-L
Main topic: Informatik
Topic: Java
Published: 13.04.2010

Cancel
Email

Password

Login    

Forgot password?
Deutsch  English