Private, Public, Default, Protected
- Home
- Tutorials
- Java
- Java Tutorial - Programmieren lernen für Anfänger
- Private, Public, Default, Protected
Ersteinmal grundsätzliche Regeln, die zum guten Ton gehören:
- Variablen deklariert man mit private
- Methoden deklariert man mit public
Nun sagt ihr vielleicht, hey, das hatten wir bereits anders gesehen. Da habt ihr recht. Man kann Methoden auch private deklarieren und Variablen public.
Wenn man eine Methode private deklariert, kann man sie von anderen Klassen aus NICHT! verwenden. Wenn wir also eine Methode dieMethodeA in der KlasseA haben und sie von KlasseB aus aufrufen wollen, können wir das nicht tun in dem wir ein Objekt vom Typen KlasseA in KlasseB erzeugen und dieMethodeA von diesem Objekt aus aufrufen, wenn die Methode private ist. Das geht nur, wenn die Methode public ist.
Gleich verhält es sich mit Variablen. Wir hatten ja gelernt, dass wir Setter und Getter brauchen um eine VariableA von KlasseA in der KlasseB zu verändern bzw. aufzurufen. Das stimmt so nicht ganz. Wenn wir die VariableA public deklarieren können wir sie folgendermaßen von KlasseB aus aufrufen:
public class KlasseA {
public int var1 = 3;
}
public class KlasseB {
public static void main(String[] args) {
KlasseA klasseAObjekt = new KlasseA();
klasseAObjekt.var1=5;
System.out.println(klasseAObjekt.var1);
}
}
Allgemein erklärt gibt es 4 Arten von Zugriffsmodifikatoren:
Private
Wenn eine Variable oder Methode private deklariert ist, dann ist sie nur in der Klasse in der sie erstellt wurde sichtbar, also nicht von anderen Klassen.
Public
Wenn eine Variable oder Methode public deklariert ist, dann ist sie von jeder Klasse aus siehtbar und bearbeitbar, die eine Referenz(ein Objekt) zu der Klasse der Variable/Methode besitzt.
Default
Wenn eine Variable oder Methode default deklariert ist, also keinen Zugrifsmodifikator hat, dann wird sie vom Packet in dem sie befindlich ist gesehen und kann via Referenz auf das Objekt der Klasse verändert/gesehen werden.
Protected
Wenn eine Variable oder Methode protected deklariert ist, dann kann nur vom gleichen Packet, oder von Klassen die von der Klasse der Variable/Methode erben, aus darauf zugegriffen werden. Was erben bedeutet, bzw. Vererbung ist, erkläre ich in einem späteren Tutorial.

Java Tutorial - Programmieren lernen für Anfänger
-
Grundlagen
-
Lektion1.1
-
Lektion1.2
-
Lektion1.3
-
Lektion1.4
-
Lektion1.5
-
Lektion1.6
-
Lektion1.7
-
Lektion1.8
-
Lektion1.9
-
-
Entscheidungen
-
Lektion2.1
-
Lektion2.2
-
Lektion2.3
-
Lektion2.4
-
Lektion2.5
-
Lektion2.6
-
-
Klassen, Objekte und Schleifen
-
Lektion3.1
-
Lektion3.2
-
Lektion3.3
-
Lektion3.4
-
Lektion3.5
-
Lektion3.6
-
Lektion3.7
-
Lektion3.8
-
Lektion3.9
-
-
Arrays und spezielle Klassen
-
Lektion4.1
-
Lektion4.2
-
Lektion4.3
-
Lektion4.4
-
Lektion4.5
-
Lektion4.6
-
Lektion4.7
-
Lektion4.8
-
Lektion4.9
-
Lektion4.10
-
-
Vererbung und Polymorphie
-
Lektion5.1
-
Lektion5.2
-
Lektion5.3
-
-
Weitere Features von Java
-
Lektion6.1
-
Lektion6.2
-
Lektion6.3
-
Lektion6.4
-
Lektion6.5
-
Lektion6.6
-
Lektion6.7
-