Zugriffsmodifizierer
Modifizierer|Die Klasse selbst|Paket-Klassen/innere Klassen|Unterklassen|Sonstige Klassen
private|ja|nein|nein|nein
ohne/leer|ja|ja|nein|nein
protected|ja|ja|ja|nein
public|ja|ja|ja|ja
Modifizierer Übersicht
Modifizierer|Anwendbar auf|Bedeutung
abstract|
final|
native|
leer/keiner(package)|
private|
protected|
public|
strictfp|
static|
synchronized|
transient|
volatile|
Modifizierer: Alle Kombinationen
Quelle:
Java Modifiers
Modifizierer - Sopra
Modifizierer|Die Klasse selbst|Paket-Klassen/innere Klassen|Unterklassen|Sonstige Klassen
private|ja|nein|nein|nein
ohne/leer|ja|ja|nein|nein
protected|ja|ja|ja|nein
public|ja|ja|ja|ja
Modifizierer Übersicht
Modifizierer|Anwendbar auf|Bedeutung
abstract|
- Klasse
- Interface
- Methode
- Kann nicht instanziiert werden
- Interfaces sind immer abstrakt (modifier optional)
- Hat keinen Body, enthält nur Signatur. (die umschließende Klasse ist selbst auch abstrakt)
final|
- Klasse
- Methode
- Objektvariablen
- Variablen
- Kann nicht erweitert werden
- Kann nicht überschrieben werden
- Können ihren Wert nicht ändern
- Können ihren Wert nicht ändern
native|
- Methode
- Plattform spezifisch (keine Signatur, kein Body)
leer/keiner(package)|
- Klasse
- Interface
- Member
- Nur im eigenen Paket sichtbar
- Nur im eigenen Paket sichtbar
- Nur im eigenen Paket sichtbar
private|
- Member
- Nur in dieser Klasse sichtbar (wo sie definiert wurde)
protected|
- Member
- Im eigenen package sichtbar und in Subklassen
public|
- Klasse
- Interface
- Member
- Von überall aus sichtbar
- Von überall aus sichtbar
- Von überall aus da sichtbar, wo auch die Klasse sichtbar ist
strictfp|
- Klasse
- Methode
- Alle Methoden in der Klasse gehen strikt nach der IEEE-Norm vor
- Methode geht strikt nach der IEEE-Norm vor
static|
- Klasse
- Methode
- Objektvariablen
- Initialisierer
- Macht eine innere Klase zu einer Top-Level-Klasse
- Die Klassenmethode wird durch den Klassennamen aufgerufen
- Zugriff über Klassennamen
- Wird aufgerufen beim Laden der Klasse
synchronized|
- Methode
- Bei statischen Methoden: lock für die dazugehörige Klasse, bei nicht-statischen methoden: lock für die jeweilige Objekt-Instanz
transient|
- Objektvariable
- Wird nicht mit dem Objekt serialisiert
volatile|
- Objektvariable
- Zugriffe auf diese Variablen sind atomar
Modifizierer: Alle Kombinationen
Modifizierer | Klasse | Variable | Methode | Konstruktor |
public | ja | ja | ja | ja |
protected | nein | ja | ja | ja |
keiner(package/default) | ja | ja | ja | ja |
private | nein | ja | ja | ja |
final | ja | ja | ja | nein |
abstract | ja | nein | ja | nein |
static | nein | ja | ja | nein |
native | nein | nein | ja | nein |
transient | nein | ja | nein | nein |
volatile | nein | ja | nein | nein |
synchronized | nein | nein | ja | nein |
strictfp | ja | nein | ja | ja |
Quelle:
Java Modifiers
Modifizierer - Sopra
Zuletzt bearbeitet von einem Moderator: