Frage

Ich mag etwas ähnliches wie protected, wo nur eine Klasse, die das protected Feld und alles implementiert, die es Unterklassen zugreifen kann.

Also, ich mag eine Variable in der Basisklasse als private erklären zu können, aber dennoch in der Lage sein, darauf zuzugreifen aus einer Unterklasse.

Vielleicht ist dies gegen die Natur der Subklassifizieren, private und / oder protected.

Gibt es so etwas wie dieses gibt es in Java?

War es hilfreich?

Lösung

Es gibt nur vier Zugriffsebene für die Felder in Java:

  • private
  • Paket-private (Standard, kein Zugriffsmodifikator)
  • protected
  • public

protected wird Subklassen, andere Klassen im gleichen Paket ermöglichen, und die Mitglieder in der Klasse selbst das protected Mitglied zugreifen zu können.

Die kurze Antwort ist, gibt es keine Möglichkeit, genau zu erreichen, was gewünscht wird.

Für eine Beschreibung dieser vier Zugriffsmodifikatoren, Kontrolle des Zugriffs auf Die Mitglieder einer Klasse von spezielleren hat Informationen.

Andere Tipps

Wenn Sie die Code-Basis zu steuern, können Sie immer kontrollieren, was in das Paket mit der Basisklasse geht -. Wenn es in seiner Verpackung allein ist, nur Subklassen das Element Sie zugreifen kann, mit Ausnahme Subklassen privat halten

Nein, es gibt keine Zugriffsmodifikator genau das tun. Der protected Modifikator ist die nächste Sache, aber das macht das Feld zu jeder Klasse in der gleichen Verpackung sowie zu Unterklassen (in oder aus dem gleichen Paket).

Nicht möglich. U kann immer noch Ihre Variablen deklarieren als private dann öffentliche Methoden erklären, die die Variablen ändern in die übergeordnete Klasse. Anschließend rufen Sie die öffentliche Methode auf die Variable.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top