Dela via


Anvisningar: Kontrollera tillgängligheten för en variabel (Visual Basic)

Du styr tillgängligheten för en variabel genom att ange dess åtkomstnivå. Åtkomstnivån avgör vilken kod som har behörighet att läsa eller skriva till variabeln.

  • Medlemsvariabler (definierade på modulnivå och utanför alla procedurer ) är standard för offentlig åtkomst, vilket innebär att all kod som kan se dem kan komma åt dem. Du kan ändra detta genom att ange en åtkomstmodifierare.

  • Lokala variabler (definierade i en procedur) har nominellt offentlig åtkomst, även om endast kod inom deras procedur kan komma åt dem. Du kan inte ändra åtkomstnivån för en lokal variabel, men du kan ändra åtkomstnivån för proceduren som innehåller den.

Mer information finns i Åtkomstnivåer i Visual Basic.

Privat och offentlig åtkomst

Så här gör du en variabel endast tillgänglig inifrån modulen, klassen eller strukturen

  1. Placera Dim-instruktionen för variabeln i modulen, klassen eller strukturen, men utanför alla procedurer.

  2. Inkludera nyckelordet Privat i -instruktionen Dim .

    Du kan läsa eller skriva till variabeln var som helst i modulen, klassen eller strukturen, men inte utanför den.

Så här gör du en variabel tillgänglig från valfri kod som kan se den

  1. För en medlemsvariabel placerar du -instruktionen Dim för variabeln i en modul, klass eller struktur, men utanför alla procedurer.

  2. Inkludera nyckelordet Offentligt i -instruktionen Dim .

    Du kan läsa eller skriva till variabeln från valfri kod som interoperates med din sammansättning.

-eller-

  1. För en lokal variabel placerar du -instruktionen Dim för variabeln i en procedur.

  2. Inkludera inte nyckelordet Public i -instruktionen Dim .

    Du kan läsa eller skriva till variabeln var som helst i proceduren, men inte utifrån.

Skyddad och vänåtkomst

Du kan begränsa åtkomstnivån för en variabel till dess klass och eventuella härledda klasser eller till dess sammansättning. Du kan också ange en union av dessa begränsningar, som tillåter åtkomst från kod i valfri härledd klass eller på någon annan plats i samma sammansättning. Du anger den här unionen genom att kombinera nyckelorden Protected och Friend i samma deklaration.

Så här gör du en variabel endast tillgänglig från dess klass och eventuella härledda klasser

  1. Placera -instruktionen Dim för variabeln i en klass, men utanför alla procedurer.

  2. Inkludera nyckelordet Skyddat i -instruktionen Dim .

    Du kan läsa eller skriva till variabeln var som helst i klassen, samt inifrån vilken klass som helst som härleds från den, men inte utanför någon klass i härledningskedjan.

Så här gör du bara en variabel tillgänglig från samma sammansättning

  1. Placera -instruktionen Dim för variabeln i en modul, klass eller struktur, men utanför alla procedurer.

  2. Inkludera nyckelordet Vän i -instruktionen Dim .

    Du kan läsa eller skriva till variabeln var som helst i modulen, klassen eller strukturen, samt från valfri kod i samma sammansättning, men inte utanför sammansättningen.

Exempel

I följande exempel visas deklarationer av variabler med Public, Protected, Friend, Protected Friendoch Private åtkomstnivåer. Observera att när -instruktionen Dim anger en åtkomstnivå behöver du inte inkludera nyckelordet Dim .

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

.NET Framework-säkerhet

Ju mer restriktiv åtkomstnivån för en variabel är, desto mindre är risken för att skadlig kod kan använda den felaktigt.

Se även