Inherits Statement

导致当前类或接口从其他类或接口集继承特性、变量、属性、过程和事件。

语法

Inherits basetypenames  

组成部分

术语 定义
basetypenames 必需。 派生此类的类名称。

-或-

派生此接口的接口名称。 使用逗号分隔多个名称。

注解

如果使用了 Inherits 语句,则它必须是类或接口定义中的第一个非空非注释行。 它应该紧跟在 ClassInterface 语句之后。

只能在类或接口中使用 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 的接口现在包含 IComparableIDisposableIFormattable 接口中的所有定义。继承的成员分别提供两个对象的特定类型比较,释放已分配的资源,并将对象的值表示为 String。 实现 thisInterface 的类必须实现每个基接口的所有成员。

另请参阅