Reflektion (Visual Basic)
Reflektion bietet Objekte (vom Typ Type), die Assemblys, Module und Typen beschreiben. Mithilfe von Reflektion können Sie dynamisch eine Instanz eines Typs erzeugen, den Typ an ein vorhandenes Objekt binden und Typinformationen von vorhandenen Objekten abfragen. Ebenso wird erläutert wie die Methoden vorhandener Objekte aufgerufen und auf ihre Felder und Eigenschaften zugegriffen werden kann. Wenn Sie Attribute in Ihrem Code verwenden, können Sie mit Reflektion auf diese zugreifen. Weitere Informationen finden Sie unter Attribute.
Hier sehen Sie ein einfaches Beispiel für Reflektion mit der statischen Methode GetType
, die von allen Typen der Basisklasse Object
geerbt wird, zum Abrufen von Typinformationen einer Variable:
' Using GetType to obtain type information:
Dim i As Integer = 42
Dim type As System.Type = i.GetType()
System.Console.WriteLine(type)
Die Ausgabe lautet:
System.Int32
Im folgenden Beispiel wird Reflektion verwendet, um den vollständigen Namen der geladenen Assembly abzurufen.
' Using Reflection to get information from an Assembly:
Dim info As System.Reflection.Assembly = GetType(System.Int32).Assembly
System.Console.WriteLine(info)
Die Ausgabe lautet:
mscorlib, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089
Übersicht über Reflektion
Reflektion ist in folgenden Situationen nützlich:
Wenn Sie in den Metadaten Ihres Programms auf Attribute zugreifen müssen Weitere Informationen finden Sie unter Abrufen von Informationen aus Attributen.
Zum Untersuchen und Instanziieren von Typen in einer Assembly
Zum Erstellen neuer Typen zur Laufzeit Verwenden Sie Klassen in System.Reflection.Emit.
Zum Ausführen von spätem Binden mit Zugriff auf Methoden der zur Laufzeit erstellten Typen Weitere Informationen finden Sie im Thema Dynamisches Laden und Verwenden von Typen.
Verwandte Abschnitte
Weitere Informationen finden Sie unter: