Skip to Content

1.22 Instanzvariablen und Klassenvariablen

Wie unterscheiden sich die Lebensdauer von Instanzvariablen und Klassenvariablen (Schlüsselwort static)?

Niveau 1
Schwierigkeitsgrad mittel
Zeit

2 Minuten

Die Antwort ist bei der nächsten Frage zu finden (URL rechts unten)

Antwort zu 1.21: Lebensdauer lokaler Variablen

Durch den Block in dem sie definiert sind. Sie werden nach Verlassen des Blocks gelöscht. Die Variablen werden bei der Deklaration auf dem Stack (Stapel) angelegt. Nach Verlassen des Blocks werden alle Variablen des Blocks wieder vom Stack (Stapel) genommen und gelöscht.

Sie müssen vom Entwickler initialisiert werden.

Comments

Antwort zu 1.21: Lebensdauer lokaler Variablen

"Sie werden mit Nullwerten belegt." stimmt das so?

lokale Variablen müssen doch normalerweise initialisiert werden, da sie keinen default Wert erhalten?

Habe es in eclipse ausprobiert, der Compiler meckert, wenn ich lokale Variablen nicht initialisere.

Vielen Dank

Viele Grüße

Im Prinzip, ja

Man musse hier zwischen Klassen und lokalen Variablen unterscheiden.

In der Java Spezifikation 4.12.5. Initial Values of Variables steht, dass Klassenvariablen mit einem Defaultwert initialisiert werden. Lokale Variablen müssen vom Entwickler initialisert werden.

Ich werde die Klausuraufgabe genauer spezifizieren.



blog | by Dr. Radut