Delen via


Vriend (Visual Basic)

Hiermee geeft u op dat een of meer gedeclareerde programmeerelementen alleen toegankelijk zijn vanuit de assembly die hun declaratie bevat.

Opmerkingen

In veel gevallen wilt u dat programmeerelementen zoals klassen en structuren worden gebruikt door de gehele assembly, niet alleen door het onderdeel dat ze declareert. Mogelijk wilt u echter niet dat ze toegankelijk zijn via code buiten de assembly (bijvoorbeeld als de toepassing eigendom is). Als u de toegang tot een element op deze manier wilt beperken, kunt u dit declareren met behulp van de Friend wijzigingsfunctie.

Code in andere klassen, structuren en modules die zijn gecompileerd naar dezelfde assembly, heeft toegang tot alle Friend elementen in die assembly.

Friend toegang is vaak het voorkeursniveau voor de programmeerelementen van een toepassing en Friend is het standaardtoegangsniveau van een interface, een module, een klasse of een structuur.

U kunt alleen op module-, interface- of naamruimteniveau gebruiken Friend . Daarom moet de declaratiecontext voor een Friend element een bronbestand, een naamruimte, een interface, een module, een klasse of een structuur zijn. Het kan geen procedure zijn.

Notitie

U kunt ook de wijzigingsfunctie voor beveiligde vriend-toegang gebruiken, waardoor een klasselid toegankelijk is vanuit die klasse, van afgeleide klassen en van dezelfde assembly waarin de klasse is gedefinieerd. Als u de toegang tot een lid wilt beperken vanuit de klasse en van afgeleide klassen in dezelfde assembly, gebruikt u de aanpassingsfunctie voor persoonlijke beveiligde toegang.

Zie Toegangsniveaus in Visual Basic voor een vergelijking van Friend en de andere toegangsaanpassingen.

Notitie

U kunt opgeven dat een andere assembly een vriendassembly is, zodat deze toegang heeft tot alle typen en leden die zijn gemarkeerd als Friend. Zie Vriendenassembly's voor meer informatie.

Opmerking

In de volgende klasse wordt de Friend wijzigingsfunctie gebruikt om andere programmeerelementen binnen dezelfde assembly toegang te geven tot bepaalde leden.

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

Gebruik

U kunt de Friend wijzigingsfunctie in deze contexten gebruiken:

Klasse-instructie

Const-instructie

Instructie declareren

Instructie voor gemachtigden

Dim-instructie

Opsommingsinstructie

Gebeurtenisinstructie

Functie-instructie

Interface-instructie

Module-instructie

Eigenschapsinstructie

Structuurinstructie

Subinstructie

Zie ook