Freigeben über


Inherits-Anweisung

Bewirkt, dass die aktuelle Klasse oder Schnittstelle die Attribute, Variablen, Eigenschaften, Prozeduren und Ereignisse von einer anderen Klasse oder gruppe von Schnittstellen erbt.

Syntax

Inherits basetypenames  

Bestandteile

Begriff Definition
basetypenames Erforderlich. Der Name der Klasse, von der diese Klasse abgeleitet wird.

-oder-

Die Namen der Schnittstellen, von denen diese Schnittstelle abgeleitet wird. Verwenden Sie Kommas, um mehrere Namen zu trennen.

Bemerkungen

Bei Verwendung muss die Inherits Anweisung die erste nicht leere, nicht kommentarfreie Zeile in einer Klasse oder Schnittstellendefinition sein. Sie sollte unmittelbar auf die Class Oder-Anweisung Interface folgen.

Sie können nur in einer Klasse oder Schnittstelle verwendet werden Inherits . Dies bedeutet, dass der Deklarationskontext für eine Vererbung keine Quelldatei, ein Namespace, eine Struktur, ein Modul, eine Prozedur oder ein Block sein kann.

Regeln

  • Klassenvererbung. Wenn eine Klasse die Inherits Anweisung verwendet, können Sie nur eine Basisklasse angeben.

    Eine Klasse kann nicht von einer klasse erben, die darin geschachtelt ist.

  • Schnittstellenvererbung. Wenn eine Schnittstelle die Inherits Anweisung verwendet, können Sie eine oder mehrere Basisschnittstellen angeben. Sie können von zwei Schnittstellen erben, auch wenn sie jeweils ein Element mit demselben Namen definieren. In diesem Beispiel muss der Implementierungscode die Namensqualifizierung verwenden, um anzugeben, welches Mitglied es implementiert.

    Eine Schnittstelle kann nicht von einer anderen Schnittstelle mit einer restriktiveren Zugriffsebene erben. Beispielsweise kann eine Public Schnittstelle nicht von einer Friend Schnittstelle erben.

    Eine Schnittstelle kann nicht von einer darin geschachtelten Schnittstelle erben.

Ein Beispiel für die Klassenvererbung im .NET Framework ist die ArgumentException Klasse, die von der SystemException Klasse erbt. Dies stellt ArgumentException alle vordefinierten Eigenschaften und Prozeduren bereit, die von System exceptions benötigt werden, z. B. die Message Eigenschaft und die ToString Methode.

Ein Beispiel für die Schnittstellenvererbung in .NET Framework ist die ICollection Schnittstelle, die von der IEnumerable Schnittstelle erbt. Dies führt ICollection dazu, dass die Definition des Enumerators geerbt wird, der zum Durchlaufen einer Auflistung erforderlich ist.

Beispiel 1

Im folgenden Beispiel wird die Inherits Anweisung verwendet, um zu zeigen, wie eine Klasse mit dem Namen thisClass alle Member einer Basisklasse mit dem Namen anotherClasserben kann.

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

Beispiel 2

Das folgende Beispiel zeigt die Vererbung mehrerer Schnittstellen.

Public Interface thisInterface
    Inherits IComparable, IDisposable, IFormattable
    ' Add new property, procedure, and event definitions.
End Interface

Die schnittstelle namens thisInterface now includes all the definitions in the IComparable, IDisposable, and IFormattable interfaces The inherited members provide respectively for type-specific comparison of two objects, release allocated resources, and expressing the value of an object as a String. Eine Klasse, die implementiert thisInterface wird, muss jedes Element jeder Basisschnittstelle implementieren.

Siehe auch