Teilen über


Friend (Visual Basic)

Gibt an, dass auf mindestens ein deklariertes Programmierelement nur innerhalb der Assembly zugegriffen werden kann, die ihre Deklaration enthält.

Bemerkungen

In vielen Fällen möchten Sie, dass Programmierelemente wie Klassen und Strukturen von der gesamten Assembly verwendet werden sollen, nicht nur von der Komponente, die sie deklariert. Möglicherweise möchten Sie jedoch nicht, dass sie über Code außerhalb der Assembly zugänglich sind (z. B. wenn die Anwendung geschützt ist). Wenn Sie den Zugriff auf ein Element auf diese Weise einschränken möchten, können Sie es mithilfe des Friend Modifizierers deklarieren.

Code in anderen Klassen, Strukturen und Modulen, die in derselben Assembly kompiliert werden, kann auf alle Elemente in dieser Friend Assembly zugreifen.

Friend Der Zugriff ist häufig die bevorzugte Ebene für die Programmierelemente einer Anwendung und Friend ist die Standardzugriffsebene einer Schnittstelle, eines Moduls, einer Klasse oder einer Struktur.

Sie können nur auf Modul-, Schnittstellen- oder Namespaceebene verwenden Friend . Daher muss der Deklarationskontext für ein Friend Element eine Quelldatei, ein Namespace, eine Schnittstelle, ein Modul, eine Klasse oder eine Struktur sein; es kann keine Prozedur sein.

Hinweis

Sie können auch den Modifizierer " Geschützter Freund " verwenden, der ein Klassenmempel aus dieser Klasse, von abgeleiteten Klassen und aus derselben Assembly zugänglich macht, in der die Klasse definiert ist. Um den Zugriff auf ein Element innerhalb seiner Klasse und von abgeleiteten Klassen in derselben Assembly einzuschränken, verwenden Sie den Modifizierer für den privaten geschützten Zugriff.

Einen Vergleich und Friend die anderen Zugriffsmodifizierer finden Sie unter Access-Ebenen in Visual Basic.

Hinweis

Sie können angeben, dass eine andere Assembly eine Freundassembly ist, die es ermöglicht, auf alle Typen und Member zuzugreifen, die als Friendgekennzeichnet sind. Weitere Informationen finden Sie unter Friend-Assemblys.

Beispiel

Die folgende Klasse verwendet den Friend Modifizierer, um anderen Programmierelementen innerhalb derselben Assembly den Zugriff auf bestimmte Member zu ermöglichen.

Class CustomerInfo

    Private p_CustomerID As Integer

    Public ReadOnly Property CustomerID() As Integer
        Get
            Return p_CustomerID
        End Get
    End Property

    ' Allow friend access to the empty constructor.
    Friend Sub New()

    End Sub

    ' Require that a customer identifier be specified for the public constructor.
    Public Sub New(ByVal customerID As Integer)
        p_CustomerID = customerID
    End Sub

    ' Allow friend programming elements to set the customer identifier.
    Friend Sub SetCustomerID(ByVal customerID As Integer)
        p_CustomerID = customerID
    End Sub
End Class

Verwendung

Sie können den Friend Modifizierer in folgenden Kontexten verwenden:

Klassen-Anweisung

Const-Anweisung

Declare-Anweisung

Delegierten-Erklärung

Dim-Anweisung

Enum-Anweisung

Event-Mitteilung

Funktionsanweisung

Schnittstellen-Erklärung

Modulerklärung

Eigenschaftserklärung

Struktur-Deklaration

Sub-Anweisung

Siehe auch