Anfang des Inhaltsbereichs

Vorgehensweisen Friends-Beziehung definieren  Dokument im Navigationsbaum lokalisieren

Verwendung

Im allgemeinen dürfen Verwender einer Klasse nur auf deren öffentliche Komponenten zugreifen. In Ausnahmefällen kann es jedoch sinnvoll sein, eine engere Bindung zwischen Klassen zu gewähren. Hier kommt das Konzept der Friends zum Tragen.
Eine Klasse kann demnach explizit genannten Verwendern (den Friends) den Zugriff auf ihre geschützten (
PROTECTED ) und privaten ( PRIVATE ) Komponenten erlauben.

Voraussetzungen

Alle als Friends zu deklarierenden Verwender (Klassen bzw. Interfaces) sind bereits angelegt.

Vorgehensweise

  1. Wählen Sie die definierende Klasse aus und wechseln Sie in den Class Editor.
  2. Klicken Sie auf den Tabreiter Friends.
  3. Wecheln Sie in den Änderungsmodus.
  4. Tragen Sie unter Friends diejenigen Klassen bzw. Interfaces ein, für die der Zugriff auf die geschützten und privaten Komponenten der definierenden Klasse gewährt werden soll.
    Geben Sie ein Interface unter Friends an, dann bedeutet dies, daß alle Klassen, die dieses Interface implementieren, Zugriff auf die geschützten und privaten Komponenten haben.

Hinweis

Falls Sie das Flag Nur modelliert setzen, dann erfolgt kein Eintrag im Class-Pool. Die Friends-Beziehung wird lediglich im Class Builder angezeigt und verwaltet. Zur Laufzeit kann dann von der Friends-Beziehung kein Gebrauch gemacht werden.

Ergebnis

Alle als Friends angegebenen Verwender können auch auf PROTECTED- und PRIVATE- Komponenten der gewährenden Klasse zugreifen, sofern das Flag Nur modelliert in Schritt 4. nicht gesetzt wurde. Die Friends-Beziehung ist stets einseitig und wird nicht vererbt. Demzufolge sind Friends einer Oberklasse nicht automatisch auch Friends ihrer Unterklassen.