Inherits – příkaz
Způsobí, že aktuální třída nebo rozhraní dědí atributy, proměnné, vlastnosti, procedury a události z jiné třídy nebo sady rozhraní.
Syntaxe
Inherits basetypenames
Součástky
Pojem | definice |
---|---|
basetypenames |
Povinný: Název třídy, ze které je tato třída odvozena. nebo Názvy rozhraní, ze kterých se toto rozhraní odvozuje. K oddělení více názvů použijte čárky. |
Poznámky
Pokud se použije, Inherits
musí být příkaz prvním neprázdným řádkem bez komentáře v definici třídy nebo rozhraní. Měl by okamžitě následovat za příkazem nebo Interface
příkazemClass
.
Můžete použít Inherits
pouze ve třídě nebo rozhraní. To znamená, že kontext deklarace dědičnosti nemůže být zdrojový soubor, obor názvů, struktura, modul, procedura nebo blok.
Pravidla
Dědičnost tříd. Pokud třída používá příkaz
Inherits
, můžete zadat pouze jednu základní třídu.Třída nemůže dědit z vnořené třídy.
Dědičnost rozhraní. Pokud rozhraní používá
Inherits
příkaz, můžete zadat jedno nebo více základních rozhraní. Můžete dědit ze dvou rozhraní, i když každý z nich definuje člen se stejným názvem. Pokud to uděláte, musí prováděcí kód použít kvalifikaci názvu k určení člena, který implementuje.Rozhraní nemůže dědit z jiného rozhraní s přísnější úrovní přístupu. Rozhraní například
Public
nemůže dědit zFriend
rozhraní.Rozhraní nemůže dědit z rozhraní vnořeného do něj.
Příkladem dědičnosti tříd v rozhraní .NET Framework je ArgumentException třída, která dědí z SystemException třídy. To poskytuje ArgumentException všechny předdefinované vlastnosti a procedury vyžadované výjimkami systému, jako Message je vlastnost a ToString metoda.
Příkladem dědičnosti rozhraní v rozhraní .NET Framework je ICollection rozhraní, které dědí z IEnumerable rozhraní. To způsobí ICollection , že dědí definici enumerátoru potřebného k procházení kolekce.
Příklad 1
Následující příklad používá příkaz Inherits
k zobrazení, jak pojmenovaná thisClass
třída může dědit všechny členy základní třídy s názvem anotherClass
.
Public Class thisClass
Inherits anotherClass
' Add code to override, overload, or extend members
' inherited from the base class.
' Add new variable, property, procedure, and event declarations.
End Class
Příklad 2
Následující příklad ukazuje dědičnost více rozhraní.
Public Interface thisInterface
Inherits IComparable, IDisposable, IFormattable
' Add new property, procedure, and event definitions.
End Interface
Rozhraní pojmenované thisInterface
nyní zahrnuje všechny definice v IComparable, IDisposablea IFormattable rozhraní zděděné členy poskytují v uvedeném pořadí pro porovnání specifické pro typ dva objekty, uvolnění přidělených prostředků a vyjádření hodnoty objektu String
jako . Třída, která implementuje thisInterface
, musí implementovat každý člen každého základního rozhraní.