Java hat mehr als drei Arten von Variablen, kann jedoch auf verschiedene Weise breit kategorisiert werden. Es gibt keine allgemein vereinbarte Reihe von * drei * Kategorien, aber hier sind drei gemeinsame Möglichkeiten, sie zu gruppieren, wobei jeder eine etwas andere Perspektive bietet:
1. nach Datentyp: Dies ist die häufigste Kategorisierung. Wir können Variablen in drei breite Datentypen gruppieren:
* Primitive Datentypen: Diese halten einfache Werte direkt. Beispiele sind "int" (Integer), "Float" (Floating-Punkt-Nummer), "Double" (Double-Precision Floating-Punkt), "char" (Zeichen), "boolean" (wahr/falsch), "byte", "Short", "long".
* Referenztypen (Objekte): Diese halten Speicheradressen (Referenzen), die auf Objekte hinweisen, die an anderer Stelle im Speicher gespeichert sind. Beispiele sind "String", "Integer", benutzerdefinierte Klassen und Arrays.
* null: Dies ist ein spezieller Typ, der das Fehlen eines Wertes angibt. Eine Variable eines beliebigen Referenztyps kann "null" zugewiesen werden.
2. nach Umfang (wo sie zugänglich sind): Hier können wir identifizieren:
* Lokale Variablen: In einer Methode oder einem Codeblock deklariert. Sie sind nur in diesem bestimmten Block zugänglich.
* Instanzvariablen (Mitgliedsvariablen): Innerhalb einer Klasse deklariert, aber außerhalb einer Methode. Sie sind jeder Instanz (Objekt) der Klasse zugeordnet.
* Klassenvariablen (statische Variablen): Mit dem Schlüsselwort "static" deklariert. Sie gehören zur Klasse selbst, nicht zu einzelnen Objekten und werden unter allen Fällen geteilt.
3. durch Veränderlichkeit: Dies wird seltener für die primäre Kategorisierung verwendet, aber konzeptionell wichtig:
* Unveränderliche Variablen: Ihr Wert kann nicht geändert werden, nachdem sie initialisiert wurden (z. B. sind Zeichenfolgen unveränderlich, obwohl String -Referenzen ändern können, worauf sie hinweisen).
* Variablen veränderliche Variablen: Ihr Wert kann nach der Initialisierung geändert werden (die meisten primitiven Typen und Objekte sind veränderlich).
* effektiv unveränderlich: Variablen, die als unveränderlich ausgelegt sind, auch wenn ihre zugrunde liegenden Komponenten veränderlich sind. Dies beinhaltet normalerweise ein defensives Kopieren oder die sorgfältige Kontrolle des Zugriffs auf modifizierbare Komponenten.
Abhängig von Ihren Kriterien können Sie daher drei verschiedene Gruppierungen auswählen. Der Ansatz "nach Datentyp" ist der am häufigsten auftretende Ansatz bei der Klassifizierung von Variablen in einführenden Java -Materialien.