Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
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
InheritsAnweisung 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
InheritsAnweisung 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
PublicSchnittstelle nicht von einerFriendSchnittstelle 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.