反映 (Visual Basic)
反映提供的物件 (類型為 Type) 可描述組件、模組和類型。 您可以使用反映來動態建立類型的執行個體、將類型繫結至現有的物件,或從現有的物件取得類型,並叫用其方法或存取其欄位及屬性。 如果您在程式碼中使用屬性,則反映可讓您存取它們。 如需詳細資訊,請參閱屬性。
以下簡單反映範例使用 Object
基底類別的所有類型所繼承的靜態方法 GetType
來取得變數的類型︰
' 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
反映概觀
反映在下列情況下十分有用:
當您需要存取程式中繼資料中的屬性時。 如需詳細資訊,請參閱擷取儲存於屬性中的資訊。
如需檢查和具現化組件中的類型。
若要在執行階段建置新型別。 使用 System.Reflection.Emit 中的類別。
對於執行晚期繫結,存取在執行階段建立的類型上的方法。 請參閱動態載入和使用類型主題。
相關章節
其他資訊: