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 Shadows pouze na úrovni třídy. To znamená, že kontext deklarace elementu musí být třída a nemůže to být zdrojový soubor, obor Shadows názvů, rozhraní, modul, struktura nebo procedura.

    V jednom příkazu deklarace lze deklarovat pouze jeden prvek stínování.

  • Kombinované modifikátory. Nelze zadat Shadows společně s , nebo ve stejné Overloads Overrides Static deklaraci.

  • 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 Private Private elementu 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:

Viz také