Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Указывает, что объявленный элемент программирования редекларирует и скрывает идентичный именованный элемент или набор перегруженных элементов в базовом классе.
Замечания
Основная цель тени (которая также называется скрытием по имени) заключается в сохранении определения членов класса. Базовый класс может измениться таким образом, что создаст элемент с тем же именем, как у уже определённого. Если это случается, модификатор Shadows
принуждает ссылки через ваш класс разрешаться на определенный вами элемент, вместо того чтобы вести к новому элементу базового класса.
Как тени, так и переопределение переопределения унаследованного элемента, но существуют значительные различия между двумя подходами. Дополнительные сведения см. в разделе "Тени" в Visual Basic.
Правила
Контекст объявления. Можно использовать
Shadows
только на уровне класса. Это означает, что контекст объявления дляShadows
элемента должен быть классом и не может быть исходным файлом, пространством имен, интерфейсом, модулем, структурой или процедурой.Можно объявить только один элемент тени в одной инструкции объявления.
Объединенные модификаторы. Нельзя указать
Shadows
вместе сOverloads
,Overrides
илиStatic
в том же объявлении.Типы элементов. Вы можете тень любого объявленного элемента с любым другим видом. Если вы тени свойства или процедуры с другим свойством или процедурой, параметры и тип возвращаемого значения не должны соответствовать свойствам базового класса или процедуре.
Доступа к. Теневой элемент базового класса обычно недоступен в производном классе, который тенирует его. Однако применяются следующие рекомендации.
Если элемент тени недоступен из кода, ссылающегося на него, ссылка разрешается в теневой элемент. Например, если
Private
элемент тени элемента базового класса, код, который не имеет разрешения на доступPrivate
к элементу базового класса, обращается к элементу базового класса.Если вы тени элемента, вы по-прежнему можете получить доступ к теневым элементу через объект, объявленный типом базового класса. Вы также можете получить доступ к нему через
MyBase
.
Модификатор Shadows
можно использовать в следующих контекстах: