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

Java Übung 11 – Java Objekte in Java Methoden übergeben

Java Übung Java Methoden Objekte

In dieser Java Übung möchte ich dir zeigen, dass du auch in Klassenmethoden auf Objekte und deren Instanzvariablen zugreifen kannst. Schau dir dazu einmal diesen Java Code an. public class Umwandlung { private int x; public int getX() { // getter Methode return x; } public void setX(int x) { // setter Methode this.x = […]

Zwei smarte Möglichkeiten eine Java Zufallszahl zu erzeugen

Java Zufallszahl

Java Zufallszahl – Wieso? In der Java Programmierung benötigst du immer wieder einmal Zufallszahlen. Du möchtest deine Software mit Daten testen und dir keine Zahlen ausdenken. Du benötigst Stichproben, welche ein reales Verhalten simulieren. Du hast ein Spiel entworfen und die Akteure sollen mit zufälligen aber unterschiedlichen Größen, Rüstungsleveln usw. auftreten. Die Einsatzmöglichkeiten für Zufallszahlen […]

Java Übung 16 – Bestimme den größten gemeinsamen Teiler

Java Übung Teiler

In dieser Java Übung möchte ich, dass du den größten gemeinsamen Teiler zwei Zahlen ermittelst. Ich möchte, dass du das Ganze mit einer while-Schleife umsetzt. Und wie? Du legst eine neue Klasse „GGT“ (größter gemeinsamer Teiler) an. In diese Klasse implementierst du eine Klassenmethode „berechneGGT“. Diese erwartet zwei Argumente vom Datentyp Integer.

So einfach lassen sich Java Strings umkehren

Java Strings umkehren

Kennst du noch das Lied „ANNA“ von Freundeskreis? Da hieß es: Du bist von hinten, wie von vorne A-N-N-A. Solche Namen oder Wörter, welche von hinten nach vorne gelesen – die gleiche Bedeutung haben, nennt man Palindrome. Anna, Ehe oder Ebbe sind recht kurze Palindrome. Aber auch längere zusammengesetzte Palindrome kennt die deutsche Sprache: Regallager […]

So implementierst du Instanzmethoden in deine Java Klasse

Java Instanzmethoden

In einen der letzten Beiträge habe ich dir gezeigt, wie du eine Klasse anlegen kannst. Ich habe die Klasse „Mensch“ oder „Human“ angelegt und wir haben die erste Instanzvariable implementiert. Dein Code sollte jetzt so aussehen: public class Human { int size=156;//size in centimeter } In diesem Beitrag werde ich dir zeigen, wie du Java […]

So verwendest du den Java Oder Operator

Java Oder Operator

Kennst du das auch aus deiner Schulzeit? Du schreibst eine Klassenarbeit in irgendeinem Fach. Nehmen wir einfach mal an – Mathe. Jetzt bist gerade fertig mit deiner Arbeit. Und zu Hause wirst du gefragt: „Und wie lief es?“ Du antwortet:“ Ganz gut. Es wird bestimmt eine Eins oder eine Zwei.“ Drei oder vier Tage später […]

Java Übung 19 – Zähle die Kommastellen

Java Übung Kommastellen Zählen

In dieser Java Übung möchte ich, dass du eine Methode zum Zählen von Kommastellen schreibst. Lege dazu eine Klasse „KommaZahl“ an. Diese Klasse enthält die statische Methode „zaehleKommaStellen“, welche eine Kommazahl als übergebenen Parameter erwartet.

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

Java Übung 17: Char-Zeichen mit For-Schleife

Java Übung Char Zeichen For Schleife

In dieser Java Übung werden wir uns die Zeichen des Character Datentypen näher anschauen. Die einzelnen Zeichen sollen auf der Konsole ausgegeben werden. Und wie? Das ganze sollst du mit einer For Schleife machen. Erstelle deshalb eine Klasse „CharZeichen“. In dieser Klasse implementierst du dann eine Klassenmethode, namens „gibZeichen“. Und im Methodenrumpf durchläuft eine For-Schleife […]