Оператор Inherits

Вызывает текущий класс или интерфейс наследовать атрибуты, переменные, свойства, процедуры и события из другого класса или набора интерфейсов.

Синтаксис

Inherits basetypenames  

Детали

Термин Определение
basetypenames Обязательный. Имя класса, от которого наследуется этот класс.

–или–

Имена интерфейсов, от которых наследуется этот интерфейс. Используйте запятые для разделения нескольких имен.

Замечания

Если используется, Inherits инструкция должна быть первой непустой, некомментационной строкой в определении класса или интерфейса. Он должен немедленно следовать инструкции или Interface инструкцииClass.

Можно использовать 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 теперь включает все определения в IComparable, IDisposableи IFormattable интерфейсы наследуемых элементов обеспечивают соответственно сравнение двух объектов, освобождение выделенных ресурсов и выражение значения объекта в виде Stringобъекта. Класс, реализующий thisInterface , должен реализовывать каждый член каждого базового интерфейса.

См. также