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

Den Java Vererbungsbaum nach dem Ist-Es-Prinzip richtig entwerfen

Java Vererbungsbaum

Vererbungsbaum in Java – klingt erstmal komisch. Dennoch wird dies so bezeichnet. Gemeint sind damit – die einzelnen Hierarchiestufen oder Vererbungsebenen – von der Superklasse bis runter zu den Kindklassen. Wie sieht das nun konkret aus? Vererbung bedeutet: Du definierst einen allgemeinen Typen – zB. Möbel Und dann implementierst du eine Unterklasse, welche die Oberklasse […]

Java Übung 24 – So kannst du Kommazahlen runden

Java Übung runden

In dieser Java Übung möchte ich mit dir Zahlen runden. Ich bitte dich deshalb: Erstelle eine Klasse „RundenUebung“. Lege dann eine statische Methode rundeZahl() an. Diese erwartet zwei Parameter. Parameter 1 ist die Kommazahl, welche gerundet werden soll. Als zweiten Parameter wird eine ganze Zahl übergeben, welche die Nachkommastelle – bis auf welche letztlich gerundet […]

So nutzt du die While Schleife in deinem Java Programm

Java While Schleife

Manchmal ist es wichtig, Dinge einmal öfter zu tun. Bei der Java Programmierung kann es schonmal sein, dass du einen Code mehrfach ausführen lassen musst. Zum Beispiel die Zahlen eins bis zehn. Ein Java Programm, welches die Zahlen eins bis zehn wiedergibt. Na wie wäre das? Der Java Code dazu würde so aussehen: public class […]

Java Objekte leben auf dem Heap

Java-Objekte-Heap

Java hat eine interne Speicherverwaltung. Eigentlich ist es nicht nur eine. Es sind mehrere.   Uns interessieren nur zwei. Methoden und lokale Variablen werden auf dem Stack verwaltet. Und die Speicherverwaltung für Java Objekte und den Instanzvariablen findet auf dem Heap statt.   Ja wieso braucht Java eigentlich zwei Speichersysteme?   Es ist ganz einfach. […]

Java Polymorphie – besserer Code und mehr Möglichkeiten

Java Polymorphie Vorteile

Polymorphie ist das Herzstück jeder objektorientierten Sprache. Nicht nur in Java – auch in Python, Javascript und in anderen Sprachen. Aber was bedeutet Polymorphie eigentlich? Polymorphie oder auch Polymorphismus genannt, kommt aus dem Griechischen. Es bedeutet Vielgestaltigkeit. Etwas freier übersetzt, kannst du es auch als Facettenreichtum bezeichnen. Im Grunde genommen zielt die ganze Java Vererbung […]

Lexikalik, Syntax und Semantik in Programmiersprachen

Programmiersprachen Semantik Programmiersprachen Syntax Programmiersprachen Lexikalik Java

Java ist eine Programmiersprache. Und wie jede andere Programmiersprache ist auch Java, lediglich eine künstliche Sprache.   Normalerweise bieten künstliche Projekte immer jede Menge Spielraum für Eigenkreationen. Bei der Programmierung ist dies nicht ganz so. Denn Programmiersprachen sind auch immer sehr exakt.   Jede Programmiersprache und auch jede gesprochene Sprache folgt immer einer Abstraktionsreihenfolge, welche […]

So kannst du ein Java Programm starten und Argumente übergeben

Um ein Java Programm starten zu können, benötigst du immer die main-Methode. Das Programm startet immer genau an dieser Stelle. Alle lokalen Variablen, welche du in der Main Methode anlegst, kannst du dann im Programm nutzen. Auch alle Methoden, welche du innerhalb des Methodenrumpfes der main-Methode aufrust, werden ausgeführt. Was ist aber vor der main-Methode. […]

Java Vererbung – Die Hierarchien richtig planen

Java Vererbung Hierarchien

Java Vererbung hat nichts mit Biologie zu tun. Die Genetik besagt, dass bestimmte Merkmalsausprägungen von den Eltern auf die Kinder übergehen. Solche Merkmalsausprägungen sind: die Hautfarbe die Haarfarbe die spezifische Größe und weitere körperliche Merkmale. Und in Java – was ist da Vererbung? Lass es uns herausfinden. Was erwartet dich in diesem Beitrag? Zuerst schauen […]

Die vier verschiedenen Zahlensysteme in der Java Programmierung

Java Zahlensysteme

Java Zahlensysteme – Was soll das? In sämtlichen Programmiersprachen werden Zahlen in Variablen abgespeichert. Wenn du dir die einzelnen primitiven Datentypen in Java einmal anschaust – wirst du feststellen – dass die Masse der Datentypen Zahlen annehmen und speichern können. Zahlen und die Mathematik dahinter spielen in der Programmierung eine sehr große Rolle. Ganz am […]

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