Freigeben über


Friend (Visual Basic)

Aktualisiert: November 2007

Legt fest, dass auf ein deklariertes Programmierelement oder mehrere deklarierte Programmierelemente nur innerhalb der Assembly, die die Deklaration enthält, zugegriffen werden kann.

Hinweise

Regeln

  • Deklarationskontext. Sie können Friend nur auf Modul-, Schnittstellen- oder Namespaceebene verwenden. Dies bedeutet, dass der Deklarationskontext für ein Friend-Element eine Quelldatei, ein Namespace, eine Schnittstelle, ein Modul oder eine Struktur, aber keine Prozedur sein kann.

  • Kombinierte Modifizierer. Sie können den Friend-Modifizierer in Verbindung mit dem Protected (Visual Basic)-Modifizierer in der gleichen Deklaration verwenden. In dieser Verbindung können die deklarierten Elemente über beide Schlüsselwörter aufgerufen werden, sodass der Zugriff über beliebigen Code innerhalb derselben Assembly, ihrer eigenen Klasse und über beliebige abgeleitete Klassen möglich ist. Sie können Protected Friend nur für Member von Klassen angeben.

Verhalten

  • Zugriffsebene. Sämtlicher Code innerhalb des Deklarationskontexts kann auf seine Elemente zugreifen. Code in anderen Klassen, Strukturen oder Modulen, die in derselben Assembly kompiliert werden, kann auf alle Friend-Elemente innerhalb dieser Assembly zugreifen.

    Der Zugriff auf Friend-Elemente ist dem Zugriff auf protected-Elemente weder über- noch untergeordnet.

  • Zugriffsmodifizierer. Die Schlüsselwörter für die Angabe der Zugriffsebene werden als Zugriffsmodifizierer bezeichnet. Einen Vergleich der Zugriffsmodifizierer finden Sie unter Zugriffsebenen in Visual Basic.

Verwendung von Friend

In vielen Fällen kann es wünschenswert sein, dass Programmierelemente wie Klassen und Strukturen von der gesamten Assembly verwendet werden, statt nur von der Komponente, mit der sie deklariert werden. Möglicherweise sollen sie jedoch nicht für Assembly-externen Code zugänglich sein, z. B. wenn die Anwendung proprietär ist. Wenn Sie den Zugriff auf ein Element in dieser Weise beschränken möchten, deklarieren Sie es mit Friend.

Der Friend-Zugriff wird für die Programmierelemente einer Anwendung häufig als Zugriffsebene bevorzugt. Beachten Sie, dass Friend als Standardzugriffsebene einer Schnittstelle, eines Moduls, einer Klasse oder einer Struktur zugeordnet wird, sofern Sie keine andere Zugriffsebene deklarieren.

Der Friend-Modifizierer kann in den folgenden Kontexten verwendet werden:

Class-Anweisung

Const-Anweisung

Declare-Anweisung

Delegate-Anweisung

Dim-Anweisung

Enum-Anweisung

Event-Anweisung

Function-Anweisung

Interface-Anweisung

Module-Anweisung

Property-Anweisung

Structure-Anweisung

Sub-Anweisung

Siehe auch

Konzepte

Zugriffsebenen in Visual Basic

Prozeduren in Visual Basic

Referenz

Public (Visual Basic)

Protected (Visual Basic)

Private (Visual Basic)

Weitere Ressourcen

Strukturen: Benutzerdefinierte Datentypen

Was sind Klassen?