Shadows (Visual Basic)
Určuje, že deklarovaný programovací prvek znovu deklaroval a skryje identicky pojmenovaný prvek nebo sadu přetížených prvků v základní třídě.
Poznámky
Hlavním účelem stínování (který se také označuje jako skrývání podle názvu ) je zachování definice členů třídy. Základní třída může procházejí změnou, která vytvoří prvek se stejným názvem jako ten, který jste už definovali. Pokud k tomu dojde, modifikátor vynutí, aby odkazy prostřednictvím třídy byly přeloženy na člen, který jste definovali, namísto na nový prvek Shadows základní třídy.
Stínování i přepsání předefinují zděděný prvek, ale mezi těmito dvěma přístupy existují významné rozdíly. Další informace najdete v tématu Stínování v Visual Basic.
Pravidla
Kontext deklarace. Můžete použít
Shadowspouze na úrovni třídy. To znamená, že kontext deklarace elementu musí být třída a nemůže to být zdrojový soubor, oborShadowsnázvů, rozhraní, modul, struktura nebo procedura.V jednom příkazu deklarace lze deklarovat pouze jeden prvek stínování.
Kombinované modifikátory. Nelze zadat
Shadowsspolečně s , nebo ve stejnéOverloadsOverridesStaticdeklaraci.Typy elementů. Jakýkoli druh deklarovaného elementu lze stínovat s libovolným jiným druhem. Pokud stíníte vlastnost nebo proceduru s jinou vlastností nebo procedurou, parametry a návratový typ se nemusí shodovat s parametry ve vlastnosti nebo proceduře základní třídy.
Přístup. Stínový prvek v základní třídě je obvykle nedostupný v rámci odvozené třídy, která jej stínuje. Platí však následující aspekty.
Pokud prvek stínování není přístupný z kódu, který na něj odkazuje, je odkaz vyřešen na stínový prvek. Pokud například element stíní prvek základní třídy, kód, který nemá oprávnění pro přístup k prvku, místo toho přistupuje k
PrivatePrivateelementu základní třídy.Pokud prvek stíníte, můžete k stínovým prvkům přistupovat i přes objekt deklarovaný typem základní třídy. Můžete k ní také získat přístup prostřednictvím
MyBase.
ShadowsModifikátor lze použít v těchto kontextech: