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

Polymorphie bringt Vorteile für Java Arrays

Java Polymorphie Arrays

Wenn Java Arrays, Schubladen oder Container sein sollen… Dann wäre der Gebrauch einer solchen Schublade ziemlich einseitig und festgefahren. Denn in jedes Array passen zwar mehrere Daten – aber immer nur vom gleichen Datentyp. Immer gleicher Datentyp? Also eine Schublade nur für Socken, Unterwäsche und der ganze andere Kram passt dann eben nicht hinein. Um […]

So kannst du Eclipse installieren

Eclipse installieren

Das Schöne an Eclipse ist, es läuft auf sämtlichen Betriebssystemen. Eclipse wird einfach auf der Webseite des Herstellers herunter geladen und kann dann installiert werden. Dabei stehen dir verschiedene Versionen zur Verfügung.

Du bekommst was du vereinbarst – Die Rückgabewerte von Java Methoden

Java Methoden Rückgabetypen

Was du vereinbarst, das bekommst du zurück. Ach wäre es schön, wenn alles im Leben so funktionieren würde. Aber zum Glück funktioniert dieses Prinzip bei deinen Java Methoden. Denn du kannst den Rückgabetypen im Methodenkopf vereinbaren. Doch bevor ich dir zeige, wie du den Rückgabetypen anlegen kannst…. Lass mich dir zeigen, wofür du den Kram […]

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 […]

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 […]

So kannst du in drei einfachen Schritten Java Arrays dynamisch vergrößern

Java Arrays vergrößern

Es ist der 31.März 1727. Es ist ein Montag. Die Welt nimmt Abschied von einem sehr bedeutenden Weltveränderer. Seine Sichtweisen beeinflussen, heute noch, die Forschung und Entwicklung im Bereichen der Physik und Chemie. Ja selbst unser aller Leben – unsere Sicht auf die alltäglichen Dinge – wurden durch seine Denkstöße revolutioniert. Dieser große Vorreiter starb […]

So verwendest du in Java try und catch Blöcke

Java try und catch

Ich bereue lieber die Dinge, die ich getan habe – als die Dinge, welche ich gar nicht erst versucht habe. Ja ich würde mich als den typischen „try-and-error-Menschen“ bezeichnen. Was ich will, probiere ich einfach aus und schaue dann erst was passiert. So etwas wie Pläne kenne ich eigentlich nicht. Und wenn ich mal einen […]

3 Möglichkeiten um Vererbung von Java Klassen zu verhindern, zu verbieten oder ausschließen

Java Vererbung verhindern

Die ganze Java Vererbung für bestimmte Klassen ausschließen bzw. verhindern oder verbieten. Was soll das? Für bestimmte Java Klassen soll die Vererbung ausgeschlossen werden. Es soll also verhindert werden, dass Elternklassen – Kindklassen bekommen können. Klingt ein bisschen wie Verhütung, oder? Denn wie auch im echten Leben, können Kinder zu kleinen Tyrannen werden. Sie bedienen […]

So lassen sich aus Java Klassen Instanzen erstellen

Java Klassen Instanzen erstellen

Lass uns jetzt aus den Java Klassen heraus Objekte anlegen. Im Einführungsbeispiel hast du bereits gelernt, wie du: Instanzvariablen bzw. Attribute anlegst Wie du aus einer normalen Java Klasse eine Programmstart Klasse machst In diesem Artikel erfährst du: Was Objekte bzw. Instanzen sind. Wie sich Objekte zusammensetzen. Wo und wie du Instanzen aus Java Klassen […]