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.
Notes
Dans de nombreux cas, vous souhaitez que les éléments de programmation tels que les classes et les structures soient utilisés par l’ensemble de l’assembly, et pas seulement par le composant qui les déclare. Toutefois, vous ne souhaitez 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 modificateur Friend
.
Le code d’autres classes, structures et modules compilés dans le même assembly peut accéder à tous les éléments Friend
de cet assembly.
L’accès Friend
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 pouvez utiliser Friend
uniquement au niveau du module, de l’interface ou de l’espace de noms. Par conséquent, le contexte de déclaration pour l’élément Friend
doit être un fichier source, un espace de noms, une interface, un module, une classe ou une structure ; il ne peut s’agir d’une procédure.
Notes
Vous pouvez également utiliser le modificateur d’accès Protected Friend, qui rend un membre de la classe accessible à partir de cette classe, des classes dérivées et du même assembly que celui 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, utilisez le modificateur d’accès Private Protected.
Pour une comparaison de Friend
et des autres modificateurs d’accès, consultez Niveaux d’accès en Visual Basic.
Notes
Vous pouvez spécifier qu’un autre assembly est un assembly friend, ce 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 modificateur Friend
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 modificateur Friend
dans ces contextes :