Reflection (Visual Basic) (Отражение (Visual Basic))
Механизм отражения позволяет получать объекты (типа Type), которые описывают сборки, модули и типы. Отражение можно использовать для динамического создания экземпляра типа, привязки типа к существующему объекту, а также получения типа из существующего объекта и вызова его методов или доступа к его полям и свойствам. Если в коде используются атрибуты, отражение обеспечивает доступ к ним. Дополнительные сведения см. в разделе Атрибуты.
Вот простой пример отражения, в котором для получения типа переменной используется статический метод GetType
, наследуемый всеми типами от базового класса Object
.
' Using GetType to obtain type information:
Dim i As Integer = 42
Dim type As System.Type = i.GetType()
System.Console.WriteLine(type)
Результат выглядит так:
System.Int32
В этом примере отражение используется для получения полного имени загруженной сборки.
' Using Reflection to get information from an Assembly:
Dim info As System.Reflection.Assembly = GetType(System.Int32).Assembly
System.Console.WriteLine(info)
Результат выглядит так:
mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
Общие сведения о классе Reflection
Отражение удобно использовать в следующих ситуациях:
При необходимости доступа к атрибутам в метаданных программы. Дополнительные сведения см. в разделе Извлечение информации, сохраненной в атрибуте.
Для проверки и создания экземпляров типов в сборке.
Для создания типов во время выполнения. Используйте классы в System.Reflection.Emit.
Для выполнения позднего связывания, которое обеспечивает доступ к методам в типах, созданных во время выполнения. См. раздел Динамическая загрузка и использование типов.
Связанные разделы
Дополнительные сведения см. по ссылке .