Amigo (Visual Basic)
Especifica que um ou mais elementos de programação declarados são acessíveis somente de dentro do assembly que contém sua declaração.
Observações
Em muitos casos, você deseja que elementos de programação, como classes e estruturas, sejam usados por todo o assembly, não apenas pelo componente que os declara. No entanto, talvez você não queira que eles sejam acessíveis por código fora do assembly (por exemplo, se o aplicativo for proprietário). Se você quiser limitar o acesso a um elemento dessa maneira, poderá declará-lo usando o Friend
modificador.
O código em outras classes, estruturas e módulos que são compilados para o mesmo assembly pode acessar todos os Friend
elementos nesse assembly.
Friend
O acesso geralmente é o nível preferido para os elementos de programação de um aplicativo e Friend
é o nível de acesso padrão de uma interface, um módulo, uma classe ou uma estrutura.
Você pode usar Friend
somente no nível de módulo, interface ou namespace. Portanto, o contexto de declaração para um Friend
elemento deve ser um arquivo de origem, um namespace, uma interface, um módulo, uma classe ou uma estrutura, não pode ser um procedimento.
Nota
Você também pode usar o modificador de acesso Amigo Protegido , que torna um membro da classe acessível de dentro dessa classe, de classes derivadas e do mesmo assembly no qual a classe está definida. Para restringir o acesso a um membro de dentro de sua classe e de classes derivadas no mesmo assembly, use o modificador de acesso protegido privado.
Para obter uma comparação de e os outros modificadores de acesso, consulte Níveis de Friend
acesso no Visual Basic.
Nota
Você pode especificar que outro assembly é um assembly amigo, o que permite que ele acesse todos os tipos e membros marcados como Friend
. Para obter mais informações, consulte Assemblies de amigos.
Exemplo
A classe a seguir usa o Friend
modificador para permitir que outros elementos de programação dentro do mesmo assembly acessem determinados membros.
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
Utilização
Você pode usar o Friend
modificador nestes contextos: