Overloads (Visual Basic)
Указывает, что свойство или процедура повторно объявляет одно или несколько существующих свойств или процедур с тем же именем.
Заметки
Перегрузка — это порядок предоставления нескольких определений для свойства или процедуры с заданным именем в одной области. Повторное объявление свойства или процедуры с другой сигнатурой иногда называют скрытием по сигнатуре.
Правила
Контекст объявления. Можно использовать Overloads только в операторе объявления свойства или процедуры.
Комбинированные модификаторы. Нельзя указывать в одном и том же объявлении процедуры Overloads вместе с Shadows (Visual Basic).
Необходимые различия. Сигнатура в этом объявлении должна отличаться от сигнатуры каждого свойства или процедуры, которые она перегружает. Сигнатура включает в себя имя свойства или процедуры, а также следующие значения:
число параметров;
порядок параметров;
типы данных параметров;
число параметров-типов (для универсальной процедуры);
тип возвращаемого значения (только для процедуры оператора преобразования).
Все перегрузки должны иметь одинаковые имена, но каждая должна отличаться от всех прочих в одной или нескольких из ранее перечисленных характеристик. Это позволяет компилятору различать версии для использования, когда код вызывает свойство или процедуру.
Запрещенные различия. Создание одного или нескольких из следующих различий является недопустимым для перегрузки свойства или процедуры, поскольку они не являются частью сигнатуры:
возвращает значение или нет (для процедуры);
тип данных возвращаемого значения (за исключением оператора преобразования);
имена параметров или параметры типа;
ограничения на параметры типа (для универсальной процедуры);
зарезервированные слова модификаторов параметров (например, ByRef или Optional);
зарезервированные слова модификаторов процедур и свойств (например, Public или Shared).
Необязательный модификатор. Нет необходимости использовать модификатор Overloads при определении нескольких перегруженных свойств или процедур в одном классе. Однако если модификатор Overloads используется в одном из объявлений, его необходимо использовать и во всех остальных.
Переобъявление и перегрузка. Модификатор Overloads можно также использовать для скрытия по имени имеющегося в базовом классе члена или набора перегруженных членов. При таком использовании Overloads модификатор Shadows можно не указывать при объявлении свойства или метода с тем же именем и тем же списком параметров, что и для члена базового класса.
Модификатор Overloads можно использовать в следующих контекстах:
См. также
Задачи
Практическое руководство. Определение оператора преобразования (Visual Basic)
Ссылки
Основные понятия
Перегрузка процедур (Visual Basic)