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