Poznámka
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Úroveň přístupu deklarovaného prvku je rozsahem schopnosti k němu přistupovat, to znamená, jaký kód má oprávnění ke čtení nebo zápisu do něj. To se určuje nejen tím, jak deklarujete samotný prvek, ale také úrovní přístupu kontejneru elementu. Kód, který nemůže získat přístup k prvku obsahujícímu, nemá přístup k žádnému z jeho obsažených prvků, ani k těm deklarovaným jako Public
. Například proměnná Public
Private
ve struktuře může být přístupná z uvnitř třídy, která obsahuje strukturu, ale ne zvnějšku této třídy.
Veřejný
Veřejné klíčové slovo v příkazu deklarace určuje, že k prvku lze přistupovat z kódu kdekoli ve stejném projektu, z jiných projektů, které odkazují na projekt, a z libovolného sestavení sestaveného z projektu. Následující kód ukazuje ukázkovou Public
deklaraci:
Public Class ClassForEverybody
Můžete použít Public
pouze na úrovni modulu, rozhraní nebo oboru názvů. To znamená, že můžete deklarovat veřejný prvek na úrovni zdrojového souboru nebo oboru názvů nebo uvnitř rozhraní, modulu, třídy nebo struktury, ale ne v postupu.
Chráněno
Klíčové slovo Protected v příkazu deklarace určuje, že element lze získat přístup pouze ze stejné třídy nebo z třídy odvozené z této třídy. Následující kód ukazuje ukázkovou Protected
deklaraci:
Protected Class ClassForMyHeirs
Můžete použít Protected
pouze na úrovni třídy a pouze v případě, že deklarujete člena třídy. To znamená, že můžete deklarovat chráněný prvek ve třídě, ale ne na úrovni zdrojového souboru nebo oboru názvů nebo uvnitř rozhraní, modulu, struktury nebo procedury.
Přítel
Klíčové slovo Friend v příkazu deklarace určuje, že prvek lze přistupovat ze stejného sestavení, ale ne z mimo sestavení. Následující kód ukazuje ukázkovou Friend
deklaraci:
Friend stringForThisProject As String
Můžete použít Friend
pouze na úrovni modulu, rozhraní nebo oboru názvů. To znamená, že můžete deklarovat přátelský prvek na úrovni zdrojového souboru nebo oboru názvů nebo uvnitř rozhraní, modulu, třídy nebo struktury, ale ne v rámci procedury.
Chráněný přítel
Kombinace klíčového slova Protected Friend v příkazu deklarace určuje, že k prvku lze přistupovat buď z odvozených tříd, nebo ze stejného sestavení, nebo z obou. Následující kód ukazuje ukázkovou Protected Friend
deklaraci:
Protected Friend stringForProjectAndHeirs As String
Můžete použít Protected Friend
pouze na úrovni třídy a pouze v případě, že deklarujete člena třídy. To znamená, že můžete deklarovat chráněný přátelský prvek ve třídě, ale ne na úrovni zdrojového souboru nebo oboru názvů nebo uvnitř rozhraní, modulu, struktury nebo procedury.
Soukromý
Privátní klíčové slovo v příkazu deklarace určuje, že k prvku lze přistupovat pouze ze stejného modulu, třídy nebo struktury. Následující kód ukazuje ukázkovou Private
deklaraci:
Private _numberForMeOnly As Integer
Můžete použít Private
pouze na úrovni modulu. To znamená, že můžete deklarovat soukromý prvek uvnitř modulu, třídy nebo struktury, ale ne na úrovni zdrojového souboru nebo oboru názvů, uvnitř rozhraní nebo v rámci procedury.
Na úrovni modulu je příkaz bez jakýchkoli klíčových slov na úrovni Dim
přístupu ekvivalentní Private
deklaraci. Můžete ale chtít použít Private
klíčové slovo, aby byl kód čitelnější a interpretován.
Privátní ochrana
Kombinace klíčového slova Private Protected v příkazu deklarace určuje, že k prvku lze přistupovat pouze ze stejné třídy, stejně jako z odvozených tříd nalezených ve stejném sestavení jako obsahující třída. Modifikátor Private Protected
přístupu se podporuje od jazyka Visual Basic 15.5.
Následující příklad ukazuje Private Protected
deklaraci:
Private Protected internalValue As Integer
Prvek lze deklarovat Private Protected
pouze uvnitř třídy. Nemůžete ji deklarovat v rámci rozhraní nebo struktury, ani ji nemůžete deklarovat na úrovni zdrojového souboru nebo oboru názvů, uvnitř rozhraní nebo struktury nebo v postupu.
Private Protected
Modifikátor přístupu je podporován jazykem Visual Basic 15.5 a novějším. Chcete-li jej použít, přidejte do souboru projektu jazyka Visual Basic (*.vbproj) následující prvek. Pokud je v systému nainstalována verze Visual Basic 15.5 nebo novější, můžete využít výhod všech jazykových funkcí podporovaných nejnovější verzí kompilátoru jazyka Visual Basic:
<PropertyGroup>
<LangVersion>latest</LangVersion>
</PropertyGroup>
Chcete-li použít Private Protected
modifikátor přístupu, musíte do souboru projektu jazyka Visual Basic (*.vbproj) přidat následující prvek:
<PropertyGroup>
<LangVersion>15.5</LangVersion>
</PropertyGroup>
Další informace najdete v tématu Nastavení jazykové verze jazyka Visual Basic.
Modifikátory přístupu
Klíčová slova, která určují úroveň přístupu, se nazývají modifikátory přístupu. Následující tabulka porovnává modifikátory přístupu:
Modifikátor přístupu | Udělená úroveň přístupu | Prvky, které můžete deklarovat s touto úrovní přístupu | Kontext deklarace, ve kterém můžete tento modifikátor použít |
---|---|---|---|
Public |
Neomezený: Každý kód, který vidí veřejný prvek, k němu může mít přístup. |
Rozhraní Moduly Vyučování Struktury Členy struktury Postupy Vlastnosti Členské proměnné Konstanty Výčty Události Externí deklarace Delegáti |
Zdrojový soubor Namespace Rozhraní Modul Třída Struktura |
Protected |
Derivační: Kód ve třídě, která deklaruje chráněný prvek nebo třídu odvozenou z ní, má přístup k elementu. |
Rozhraní Vyučování Struktury Postupy Vlastnosti Členské proměnné Konstanty Výčty Události Externí deklarace Delegáti |
Třída |
Friend |
Shromáždění: Kód v sestavení, který deklaruje, že k němu může přistupovat přátelský element |
Rozhraní Moduly Vyučování Struktury Členy struktury Postupy Vlastnosti Členské proměnné Konstanty Výčty Události Externí deklarace Delegáti |
Zdrojový soubor Namespace Rozhraní Modul Třída Struktura |
Protected
Friend
|
Sjednocení Protected a Friend :Kód ve stejné třídě nebo stejném sestavení jako chráněný přátelský prvek nebo v jakékoli třídě odvozené z třídy elementu má přístup k němu |
Rozhraní Vyučování Struktury Postupy Vlastnosti Členské proměnné Konstanty Výčty Události Externí deklarace Delegáti |
Třída |
Private |
Kontext deklarace: Kód v typu, který deklaruje soukromý prvek, včetně kódu v rámci obsažených typů, má přístup k elementu. |
Rozhraní Vyučování Struktury Členy struktury Postupy Vlastnosti Členské proměnné Konstanty Výčty Události Externí deklarace Delegáti |
Modul Třída Struktura |
Private Protected |
Kód ve třídě, která deklaruje soukromý chráněný prvek, nebo kód v odvozené třídě, jež je ve stejném sestavení jako bázová třída. | Rozhraní Vyučování Struktury Postupy Vlastnosti Členské proměnné Konstanty Výčty Události Externí deklarace Delegáti |
Třída |