Partager via


Friend (Visual Basic)

Spécifie qu’un ou plusieurs éléments de programmation déclarés sont accessibles uniquement à partir de l’assembly qui contient leur déclaration.

Remarques

Dans de nombreux cas, vous souhaitez que les éléments de programmation tels que les classes et les structures soient utilisés par l’assembly entier, non seulement par le composant qui les déclare. Toutefois, vous ne souhaiterez peut-être pas qu’elles soient accessibles par du code en dehors de l’assembly (par exemple, si l’application est propriétaire). Si vous souhaitez limiter l’accès à un élément de cette façon, vous pouvez le déclarer à l’aide du Friend modificateur.

Le code dans d’autres classes, structures et modules compilés dans le même assembly peut accéder à tous les Friend éléments de cet assembly.

Friend l’accès est souvent le niveau préféré pour les éléments de programmation d’une application et Friend est le niveau d’accès par défaut d’une interface, d’un module, d’une classe ou d’une structure.

Vous ne pouvez utiliser Friend qu’au niveau du module, de l’interface ou de l’espace de noms. Par conséquent, le contexte de déclaration d’un Friend élément doit être un fichier source, un espace de noms, une interface, un module, une classe ou une structure ; il ne peut pas s’agir d’une procédure.

Remarque

Vous pouvez également utiliser le modificateur d’accès Protected Friend , qui rend un membre de classe accessible à partir de cette classe, à partir de classes dérivées et à partir du même assembly dans lequel la classe est définie. Pour restreindre l’accès à un membre à partir de sa classe et des classes dérivées dans le même assembly, vous utilisez le modificateur d’accès protégé privé .

Pour une comparaison des Friend autres modificateurs d’accès et des autres modificateurs d’accès, consultez les niveaux d’accès en Visual Basic.

Remarque

Vous pouvez spécifier qu’un autre assembly est un assembly friend, qui lui permet d’accéder à tous les types et membres marqués comme Friend. Pour plus d’informations, consultez Assemblys friend.

Exemple :

La classe suivante utilise le Friend modificateur pour autoriser d’autres éléments de programmation au sein du même assembly à accéder à certains membres.

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

Utilisation

Vous pouvez utiliser le Friend modificateur dans ces contextes :

Déclaration de classe

Instruction Const

Declare, instruction

Déclaration du Délégué

Instruction Dim

Instruction Enum

Déclaration de l'événement

Instruction de fonction

Déclaration d'interface

Déclaration de module

Property Statement

Déclaration de structure

Sous-énoncé

Voir aussi