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: