Zugriffsmodifizierer (Java)

Aus Byte-Welt Wiki
Wechseln zu: Navigation, Suche

Zugriffsmodifizierer

Modifizierer Die Klasse selbst Paket-Klassen/innere-Klassen Unterklassen Sonstige Klassen
private ja nein nein nein
public ja ja ja ja
protected ja ja ja nein
ohne/leer ja ja nein nein

Modifizierer Übersicht

Modifizierer Anwendbar auf Bedeutung
abstract - Klasse <br\>- Interface <br\>- Methode - Kann nicht instanziiert werden <br\>- Interfaces sind immer abstrakt (modifier optional)<br\> - Hat keinen Body, enthält nur Signatur. (die umschließende Klasse ist selbst auch abstrakt)
final - Klasse <br\>- Methode <br\>- Objektvariablen<br\>- Variablen - Kann nicht erweitert werden <br\> - Kann nicht überschrieben werden<br\>- Können ihren Wert nicht ändern <br\>- Können ihren Wert nicht ändern
nativ - Methode - Plattform spezifisch (keine Signatur, kein Body)
leer/keiner(package) - Klasse <br\>- Interface <br\>- Member - Nur im eigenen Paket sichtbar <br\>- Nur im eigenen Paket sichtbar <br\> - 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 <br\>- Interface <br\>- Member - Von überall aus sichtbar <br\> - Von überall aus sichtbar <br\> - Von überall aus da sichtbar, wo auch die Klasse sichtbar ist
strictfp - Klasse <br\>- Methode - Alle Methoden in der Klasse gehen strikt nach der IEEE-Norm vor <br\>- Methode geht strikt nach der IEEE-Norm vor
static - Klasse <br\>- Methode <br\>- Objektvariablen <br\> - Initialisierer - Macht eine innere Klase zu einer Top-Level-Klasse <br\> - Die Klassenmethode wird durch den Klassennamen aufgerufen <br\>- Zugriff über Klassennamen <br\> - 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 nein
final ja ja ja nein
abstract ja nein ja nein
static nein ja ja nein
nativ 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:


Fragen

Das Thema wurde nicht ausreichend behandelt? Du hast Fragen dazu und brauchst weitere Informationen? Dann hole dir deine Antworten jetzt im Byte-Welt-Forum


--eRaaaa 13:08, 25. Dez 2009 (CET)