Skip to main content

So nutzt du das Java Keyword public

Java Programme bestehen aus Java Klassen.

Und der Zugriff auf eine Java Klasse sollte nach außen immer gewährleistet sein.

Was bedeutet das?
Du solltest in jeder Klasse die Möglichkeit haben, ein Objekt einer anderen Klasse anzulegen.

Gerade durch diese Möglichkeit macht doch das ganze Klassenkonstrukt erst Sinn.

Und wie geht das?
Durch das Java Keyword public.
Durch dieses Keywort kannst du Klassen, aber auch Methoden, für andere Klassen sichtbar machen.

Und so geht’s.
Wenn du eine neue Klasse anlegst, besteht die Möglichkeit einen sogenannten Access Modifiers zu wählen.

Markiere den Modifiers public und deine neue Klasse ist dann öffentlich zugänglich.

Du kannst aber bestehende Klassen nachträglich öffentlich machen.
Schreibe dazu vor dem Keywort class das Keywort public und deine Klasse ist öffentlich.

Was passiert durch diese Sichtbarkeit?
Du erlaubst dann allen anderen Klassen, Objekte dieser Klasse anzulegen.

Weiterhin kannst du die Öffentlichkeit für Methoden oder Instanzvariablen einschränken.

Schreibe einen anderen Access Modifier vor die Variablen und Methoden.


public class VorfuehrungProgramm{
private int vorfuehrungsVariable;//die Klasse ist public (öffentlich). Die Variable ist nicht öffentlich (private)


private void vorfuehren(){ //Die Methode ist ebenfalls nicht öffentlich.

}
}

Somit haben andere Klassen zwar die Möglichkeit Objekte dieser Klassen zu bilden.
Sie dürfen aber nicht auf deren Methoden zugreifen.

Und was bring das?
Nimm einfach mal an.
Du bietest ein Programm an, welches Radiowellen empfängt und verarbeitet.

Oder anders gesagt: ein Radioprogramm zum Hören von Radiosendern.

Dein Nutzer kann zum Programmstart ein Radioobjekt erschaffen.
Klar sonst wäre es kein Radioprogramm.

Dein Nutzer könnte die Lautstärke einstellen.

Deine Radioklasse hätte somit eine Instanzvariable zur Lautstärke.

Dürfte der Nutzer dann uneingeschränkt auf die Lautstärke zugreifen?

Na…

Eher nicht. Denn die Lautstärke könnte niemals negativ sein.
Die Lautstärke könnte einen bestimmten Wert auch nicht überschreiten.

Wir können also festhalten:
Die Instanzvariable „Lautstärke“ dürfte sich nur in gewissen Grenzen bewegen.

Du musst also den Zugriff auf diese Variable begrenzen.
Und du brauchst Methoden, welche die Nutzereingabe prüfen.

Und erst dann sollte die Zuweisung auf die Lautstärke erfolgen.

Und bei den Methoden ist es ähnlich.
Der Nutzer kann zwar auf Methoden zur Lautstärkeregelung zugreifen.
Aber er sollte nicht auf Methoden zur Signalweitergabe, zum Signalempfang usw. zugreifen können.

Du siehst, dass du beim Klassendesign schon einige Möglichkeiten hast.
Du solltest dir vor dem Anlegen einer Klasse über die Zugriffsmöglichkeiten im Klaren sein.

Fazit:

  • Durch das Java Keywort public machst du Java Klassen öffentlich zugänglich.
  • Wenn es keinen wirklichen Grund gibt, es nicht zu tun – Dann sollte jede deiner Java Klassen public sein.
  • Du kannst immer entscheiden, ob du Attribute dieser Klassen ebenfalls öffentlich oder nicht zugänglich hältst.
    Nutze dann für Methoden und Variablen andere Access Modifiers.

Ähnliche Beiträge

Hier sind ein paar richtig nette Features, die dich beim Java lernen unterstützen

Java lernen Eclipse

Was ist das Wichtigste beim Einstieg in ein neues Wissensgebiet? Nein, kein gutes Sachbuch oder ein besonders guter Lehrer. Es ist Spaß. Beim Java Lernen brauchst du Spaß. Es gibt Lehrer, welche ihren Stoff so vermitteln, dass Lernen Spaß bereitet. Aber die Grundvoraussetzung ist und bleibt der Spaß. Und nichts ist so spaßhemmend wie Langeweile […]

Heap & Stack – Die Speicherverwaltung in Java

Java Speicher

Java nutzt eine interne Speicherverwaltung. Eigentlich sind es mehrere. Uns interessieren lediglich zwei. Da das Thema Speicherverwaltung recht umfangreich ist, habe ich dir im Folgenden einmal die wichtigsten Artikel zusammengestellt. Die zwei Speichersysteme von Java Java Methoden werden auf dem Stack gestapelt. Der Speicher auf dem Java Methoden zu Hause sind, nennt sich Stack Speicher. […]

So richtest du einen Schreibschutz für deine Java Variablen ein

Stell dir vor: Du hast erfolgreich dein erstes Programm für die Personalabteilung aufgesetzt. Du hast deine ersten 1000 Datensätze schön sauber angelegt. Und nun kommt dein Kollege und überschreibt die Vornamen der ersten 100 Mitarbeitern. Na schöne Sch…. 🙂 Wie kann das passieren? Wie kann man das verhindern? Du brauchst eigentlich nur deine Java Variablen […]

Der bedeutende Unterschied zwischen Klassenvariablen und Instanzvariablen

Java Klassenvariablen

Bei der Java Programmierung unterscheidet man drei Arten von Variablen. Als erste Gruppe sind die lokalen Variablen zu nennen. Auf diese gehe ich in einem separaten Artikel ein. Mich interessieren die zwei anderen Variablentypen. Zum einen existieren Klassenvariablen. Und dann sind da noch die Instanzvariablen. Wo liegt der Unterschied? Instanzvariablen stehen einem Objekt zur Verfügung. […]

So kannst du gelöschte Java Projekte oder Dateien in Eclipse wieder herstellen

Wahrscheinlich passiert es jedem einmal, dass man versehentlich Dateien löscht. Und dann? Die Wut ist riesig, weil man ja alles nochmal schreiben muss. In Eclipse hast du die Möglichkeit sämtliche Dateien wieder herzustellen. In diesem Beitrag möchte ich dir demonstrieren, wie du gelöschte Java Klassen, Dateien, Projekte oder Packages wieder herstellen kannst.

So lassen sich Java Arrays kopieren

Java Arrays kopieren

Java Arrays kopieren oder klonen…. Was heißt das eigentlich? Eine Kopie ist eine Reproduktion bzw. die Nachbildung eines Originals. Somit ist jede Fotographie – die Abbildung einer bestimmten optischen Wirklichkeit, zu einem festen Zeitpunkt. Die Kopie einer Buchseite ist das optische Abbild dieser spezifischen Buchseite – auch zu einem festen Zeitpunkt. Wichtig in diesem Zusammenhang […]

Die vier wichtigen Phasen um Java Objekte zu erstellen

Java Objekte anlegen

Wie werden aus deinen Java Klassen richtig nützliche Java Objekte? Das ganze läuft in vier Phasen ab. Und diese Phasen möchte ich dir in diesem Beitrag vorstellen. Ob das nützlich ist? Schau dir das Bild an. Am Ende dieses Beitrages wirst du wissen, warum Eclipse dir hier eine Fehlermeldung gibt und wie du dieses Problem […]

So verwendest du die Java Codeblöcke zur Automatisierung

Java Codeblöcke

In diesem Beitrag geht es um den Einsatz von Java Codeblöcken oder Initialisierungsblöcken. Viele Wege führen nach Rom. Oder Alle Wege führen nach Rom. Heißt es in einem alten Sprichwort. Und so ähnlich ist es bei der Java Programmierung. In diesem Beitrag möchte ich dir einen weiteren Weg vorstellen, wie du Variablen eines Java Objektes […]