Share via


Inherits Statement

讓目前的類別或介面,從另一個類別或介面集合繼承屬性 (Attribute)、變數、屬性 (Property)、程序及事件。

語法

Inherits basetypenames  

組件

詞彙 定義
basetypenames 必要。 衍生出此類別之類別的名稱。

-或-

衍生出此介面之介面的名稱。 使用逗號分隔多個名稱。

備註

如果要使用,Inherits 陳述式必須是類別或介面定義中第一個非空白的非註解行。 其應該緊接在 ClassInterface 陳述式後面。

您只能在類別或介面中使用 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 的介面現在包含 IComparableIDisposableIFormattable 介面中的所有定義。繼承的成員會分別提供兩個物件的型別特定比較、釋放配置的資源,以及將物件的值表示為 String。 實作 thisInterface 的類別必須實作每個基底介面的每個成員。

另請參閱