讓目前的類別或介面繼承來自另一個類別或一組介面的屬性、變數、屬性、程式和事件。
語法
Inherits basetypenames
組件
| 術語 | 定義 |
|---|---|
basetypenames |
必須的。 這個類別衍生的來源類別名稱。 -或- 這個介面衍生的來源介面名稱。 使用逗號分隔多個名稱。 |
備註
如果使用, Inherits 語句必須是類別或介面定義中的第一個非空白、非批注行。 它應該會緊接著 Class 或 Interface 語句。
Inherits您只能在類別或介面中使用。 這表示繼承的宣告內容不能是來源檔案、命名空間、結構、模組、程式或區塊。
規則
類別繼承。 如果類別使用
Inherits語句,您只能指定一個基類。類別無法繼承自其內巢狀類別。
介面繼承。 如果介面使用
Inherits語句,您可以指定一或多個基底介面。 即使它們各自定義具有相同名稱的成員,您仍可繼承自兩個介面。 如果您這樣做,實作程式代碼必須使用名稱限定性來指定它正在實作的成員。介面無法繼承自具有更嚴格的存取層級的另一個介面。 例如,
Public介面無法繼承自Friend介面。介面無法繼承自其內巢狀介面。
.NET Framework 中的類別繼承範例是 ArgumentException 類別,其繼承自 SystemException 類別。 這會提供 ArgumentException 系統例外狀況所需的所有預先定義屬性和程式,例如 Message 屬性和 ToString 方法。
.NET Framework 中的介面繼承範例是 ICollection 介面,其繼承自 IEnumerable 介面。 這會導致 ICollection 繼承周游集合所需的列舉值定義。
範例 1
下列範例會 Inherits 使用語句來示範名為 thisClass 的類別如何繼承名為 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
範例 2
下列範例顯示多個介面的繼承。
Public Interface thisInterface
Inherits IComparable, IDisposable, IFormattable
' Add new property, procedure, and event definitions.
End Interface
名為 thisInterface 的介面現在包含、 IDisposable和 IFormattable 介面中的所有IComparable定義。繼承的成員分別針對兩個物件的型別特定比較提供、釋放配置的資源,以及將物件的值表示為 String。 實作的 thisInterface 類別必須實作每個基底介面的每個成員。