Поделиться через


Зарезервированное слово Implements и оператор Implements

Обновлен: Ноябрь 2007

Зарезервированное слово Visual BasicImplements используется двумя способами. Инструкция Implements означает, что класс или структура реализуют интерфейс. Ключевое слово Implements обозначает, что элемент класса или структуры реализует элемент интерфейса.

Реализация инструкции

Если класс или структура реализуют один или несколько интерфейсов, он должно включать инструкцию Implements сразу после инструкции Class или Structure. Инструкция Implements требует разделенный запятыми список интерфейсов, внедряемый с помощью класса. Класс или структура должны реализовать все элементы интерфейса с помощью ключевого слова Implements.

Ключевое слово Implements

Ключевое слово Implements требует разделенный запятыми список элементов интерфейса для внедрения. Как правило, указывается только один элемент интерфейса, но можно указать и несколько элементов. Спецификация элемента интерфейса обязательно состоит из имени интерфейса, которое должно быть указано в операторе implements внутри класса, точки и имени реализуемой функции, свойства или события элемента. Для имени элемента класса, который реализует элемент интерфейса, можно использовать любой допустимый идентификатор, не ограничиваясь требованием InterfaceName_MethodName, как это было в более ранних версиях Visual Basic.

Например следующий код показывает способ объявления подпрограммы с именем Sub1, которая реализует метод интерфейса:

Class Class1
    Implements interfaceclass.interface2

    Sub Sub1(ByVal i As Integer) Implements interfaceclass.interface2.Sub1
    End Sub
End Class

Необходимо, чтобы типы параметров и возвращаемые типы элемента реализации соответствовали свойствам интерфейса или объявлению элементов в интерфейсе. Обычным способом реализации элемента интерфейса является способ с использованием элемента, имя которого совпадает с именем интерфейса (см. предыдущий пример).

Для объявления реализации метода интерфейса можно использовать любые допустимые атрибуты в объявлении метода экземпляра, включая Overloads, Overrides, Overridable, Public, Private, Protected, Friend, Protected Friend, MustOverride, Default и Static. Атрибут Shared не является допустимым, поскольку он определяет класс, а не метод экземпляра.

С помощью Implements можно также задать единственный метод, который реализует несколько методов, определенных в интерфейсе, как в следующем примере:

Class Class2
    Implements I1, I2

    Protected Sub M1() Implements I1.M1, I1.M2, I2.M3, I2.M4
    End Sub
End Class

Можно использовать закрытый элемент для реализации элемента интерфейса. Если закрытый элемент реализует элемент интерфейса, он становится доступен через интерфейс, даже если он не доступен непосредственно через переменные класса.

См. также

Задачи

Практическое руководство. Создание и реализация интерфейсов

Пошаговое руководство. Создание и реализация интерфейсов

Основные понятия

Общие сведения об интерфейсах

Определение интерфейса

Примеры реализации интерфейсов в Visual Basic

Употребление интерфейсов

Ссылки

Оператор Implements

Implements (Visual Basic)

Другие ресурсы

Наследование в Visual Basic