Share via


Procedure: de beschikbaarheid van een variabele beheren (Visual Basic)

U bepaalt de beschikbaarheid van een variabele door het toegangsniveau op te geven. Het toegangsniveau bepaalt welke code gemachtigd is om naar de variabele te lezen of schrijven.

  • Lidvariabelen (gedefinieerd op moduleniveau en buiten elke procedure) hebben standaard openbare toegang, wat betekent dat elke code die ze kan zien, toegang heeft tot deze variabelen. U kunt dit wijzigen door een toegangswijziging op te geven.

  • Lokale variabelen (gedefinieerd in een procedure) hebben nominaal openbare toegang, hoewel alleen code binnen hun procedure toegang heeft tot deze variabelen . U kunt het toegangsniveau van een lokale variabele niet wijzigen, maar u kunt het toegangsniveau wijzigen van de procedure die deze bevat.

Zie Access-niveaus in Visual Basic voor meer informatie.

Persoonlijke en openbare toegang

Een variabele alleen toegankelijk maken vanuit de module, klasse of structuur

  1. Plaats de Dim-instructie voor de variabele in de module, klasse of structuur, maar buiten elke procedure.

  2. Neem het persoonlijke trefwoord op in de Dim instructie.

    U kunt overal in de module, klasse of structuur naar de variabele lezen of schrijven, maar niet van buiten de variabele.

Een variabele toegankelijk maken vanuit elke code die deze kan zien

  1. Plaats voor een lidvariabele de Dim instructie voor de variabele in een module, klasse of structuur, maar buiten een procedure.

  2. Neem het openbare trefwoord op in de Dim instructie.

    U kunt de variabele lezen of schrijven vanuit elke code die met uw assembly werkt.

– of –

  1. Plaats voor een lokale variabele de Dim instructie voor de variabele in een procedure.

  2. Neem het Public trefwoord niet op in de Dim instructie.

    U kunt overal in de procedure naar de variabele lezen of schrijven, maar niet van buiten de variabele.

Beveiligde en vriendtoegang

U kunt het toegangsniveau van een variabele beperken tot de klasse en eventuele afgeleide klassen, of tot de assembly. U kunt ook de samenvoeging van deze beperkingen opgeven, waardoor toegang vanuit code in elke afgeleide klasse of op een andere plaats in dezelfde assembly mogelijk is. U geeft deze samenvoeging op door de Protected en Friend trefwoorden in dezelfde declaratie te combineren.

Een variabele alleen toegankelijk maken vanuit de klasse en eventuele afgeleide klassen

  1. Plaats de Dim instructie voor de variabele binnen een klasse, maar buiten een procedure.

  2. Neem het trefwoord Beveiligd op in de Dim instructie.

    U kunt overal in de klasse naar de variabele lezen of schrijven, evenals vanuit elke klasse die daaruit is afgeleid, maar niet van buiten een klasse in de keten van afleiding.

Een variabele alleen toegankelijk maken vanuit dezelfde assembly

  1. Plaats de Dim instructie voor de variabele in een module, klasse of structuur, maar buiten een procedure.

  2. Neem het trefwoord Vriend op in de Dim instructie.

    U kunt overal in de module, klasse of structuur naar de variabele lezen of schrijven, evenals vanuit elke code in dezelfde assembly, maar niet van buiten de assembly.

Opmerking

In het volgende voorbeeld ziet u declaraties van variabelen met Public, Protected, en FriendProtected FriendPrivate toegangsniveaus. Houd er rekening mee dat wanneer de Dim instructie een toegangsniveau opgeeft, u het Dim trefwoord niet hoeft op te nemen.

Public Class classForEverybody  
Protected Class classForMyHeirs  
Friend stringForThisProject As String  
Protected Friend stringForProjectAndHeirs As String  
Private numberForMeOnly As Integer  

.NET Framework-beveiliging

Hoe beperkender het toegangsniveau van een variabele, hoe kleiner de kans dat schadelijke code er onjuist gebruik van kan maken.

Zie ook