Sobes.tech
Intern

Was ist der Unterschied zwischen einem Feld und einer Variablen in Java?

sobes.tech KI

Antwort von AI

Ein Feld ist eine Variable, die innerhalb einer Klasse deklariert wird, aber außerhalb jeder Methode. Felder definieren die Eigenschaften des Objekts der Klasse.

Eine Variable ist jeder Ort im Speicher, der für die Speicherung von Daten eines bestimmten Typs reserviert ist. Variablen können sein:

  • Felder (field): auf Klassenebene deklariert.
  • Lokale Variablen (local variable): innerhalb einer Methode, eines Konstruktors oder Blocks deklariert.
  • Methodenparameter (method parameter): in der Methodensignatur deklariert.

Der Hauptunterschied liegt in Gültigkeitsbereich und Lebensdauer. Felder gehören zum Objekt (bei nicht-statischen) oder zur Klasse (bei statischen) und existieren während ihres gesamten Lebenszyklus. Lokale Variablen und Methodenparameter existieren nur innerhalb des Blocks, in dem sie deklariert sind, und werden nach Verlassen des Blocks zerstört.

Beispiel:

class Example {
    int instanceField; // Instanzfeld

    static String staticField; // Statisches Feld

    void myMethod(int parameter) { // parameter - Methodenparameter
        int localVar = 10; // localVar - lokale Variable
        this.instanceField = parameter;
        System.out.println(staticField + " " + localVar);
    }
}