Inherits Statement
讓目前的類別或介面,從另一個類別或介面集合繼承屬性 (Attribute)、變數、屬性 (Property)、程序及事件。
語法
Inherits basetypenames
組件
詞彙 | 定義 |
---|---|
basetypenames |
必要。 衍生出此類別之類別的名稱。 -或- 衍生出此介面之介面的名稱。 使用逗號分隔多個名稱。 |
備註
如果要使用,Inherits
陳述式必須是類別或介面定義中第一個非空白的非註解行。 其應該緊接在 Class
或 Interface
陳述式後面。
您只能在類別或介面中使用 Inherits
。 這表示繼承的宣告內容不能是來源檔案、命名空間、結構、模組、程序或區塊。
規則
類別繼承。 如果類別使用
Inherits
陳述式,您只能指定一個基底類別。類別無法從自身內部的巢狀類別繼承。
介面繼承。 如果介面使用
Inherits
陳述式,您可以指定一或多個基底介面。 即使其皆定義具有相同名稱的成員,您也可以繼承自兩個介面。 如果您這樣做,實作程式碼必須使用名稱限定性條件來指定要實作的成員。介面無法繼承自具有更嚴格存取層級的另一個介面。 例如,
Public
介面無法繼承自Friend
介面。介面無法繼承自內嵌於本身的介面。
.NET Framework 中的類別繼承範例是繼承自 SystemException 類別的 ArgumentException 類別。 這會提供 ArgumentException 系統例外狀況所需的所有預先定義屬性和程序,例如 Message 屬性和 ToString 方法。
.NET Framework 中的介面繼承範例是繼承自 IEnumerable 介面的 ICollection 介面。 這會導致 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
的介面現在包含 IComparable、IDisposable 和 IFormattable 介面中的所有定義。繼承的成員會分別提供兩個物件的型別特定比較、釋放配置的資源,以及將物件的值表示為 String
。 實作 thisInterface
的類別必須實作每個基底介面的每個成員。