Was bedeutet der Modifikator private?

Der Modifikator private beschränkt den Zugriff auf das damit ausgezeichnete Element auf die deklarierende Klasse.

Er kann für Konstruktoren, Methoden und Felder verwendet werden.

Aufgrund des Geheimnisprinzips, nach dem alle Sprachelemente aus Sicherheitsgründen nur aus den Programmteilen heraus ansprechbar sein dürfen, für die dies zwingend notwendig ist, sollten, wenn der Aufruf lediglich in der deklarierenden Klasse erfolgt, Methoden und Felder private oder zumindest package-default (ohne Zugriffsmodifikator) deklariert werden.

Um auf Instanzvariablen auch aus anderen Klassen heraus zuzugreifen, können zum Lesen und Schreiben sog. Accessor-Methoden, auch Getter und Setter genannt, definiert werden.

Die private Deklaration eines Konstruktors ist auf den ersten Blick unverständlich, da in diesem Fall von außen kein Objekt der Klasse gebildet werden kann. Das Verfahren wird beim Singleton-Entwurfsmuster verwendet, bei dem in der Klasse ein Objekt ihrerselbst erstellt wird, das dann über einen Methodenaufruf angesprochen werden kann. So wird gewährleistet, dass nur ein einziges Objekt der Klasse existiert.

Zum Geheimnisprinzip und für einen Vergleich der Zugriffsmodifikatoren siehe auch den Artikel zum Geheimnisprinzip.

Wenn Ihnen javabeginners.de gefällt, freue ich mich über eine Spende an diese gemeinnützigen Organisationen.