Als «reflection» getaggte Fragen

Reflexion ist die Fähigkeit eines Programms, seine Struktur und / oder sein Verhalten zur Laufzeit zu beobachten und / oder zu ändern. Die Reflexion hängt von der unterstützenden Programmiersprache ab. Bitte kennzeichnen Sie die Programmiersprache, die bei Verwendung dieses Tags verwendet wird.



1
Ruft alle Eigenschaften ab, die ein bestimmtes Attribut markiert haben
Ich habe Klasse und Eigenschaften dort. Einige Eigenschaften können als Attribut markiert werden (es ist mein LocalizedDisplayNameErbe von DisplayNameAttribute). Dies ist eine Methode zum Abrufen aller Eigenschaften der Klasse: private void FillAttribute() { Type type = typeof (NormDoc); PropertyInfo[] propertyInfos = type.GetProperties(); foreach (var propertyInfo in propertyInfos) { ... } …
80 c#  reflection 


5
Wie kann ich einen generischen Typ aus einer Zeichenfolgendarstellung abrufen?
Ich habe MyClass<T>. Und dann habe ich das string s = "MyClass<AnotherClass>";. Wie kann ich Type aus der Zeichenfolge abrufen s? Eine Möglichkeit (hässlich) besteht darin, das "<" und ">" zu analysieren und Folgendes zu tun: Type acType = Type.GetType("AnotherClass"); Type whatIwant = typeof (MyClass<>).MakeGenericType(acType); Aber gibt es eine sauberere …
79 c#  reflection  types 

7
Ziel-C Selbstbeobachtung / Reflexion
Gibt es eine integrierte Methode, Funktion, API, allgemein akzeptierte Methode usw., um den Inhalt eines instanziierten Objekts in Objective-C zu sichern, insbesondere in Apples Cocoa / Cocoa-Touch-Umgebung? Ich möchte in der Lage sein, so etwas zu tun MyType *the_thing = [[MyType alloc] init]; NSString *the_dump = [the_thing dump]; //pseudo code …

2
Wie instanziiert die WCF-Deserialisierung Objekte, ohne einen Konstruktor aufzurufen?
Bei der Deserialisierung von WCF ist etwas Magisches im Gange. Wie instanziiert es eine Instanz des Datenvertragstyps, ohne seinen Konstruktor aufzurufen? Betrachten Sie beispielsweise diesen Datenvertrag: [DataContract] public sealed class CreateMe { [DataMember] private readonly string _name; [DataMember] private readonly int _age; private readonly bool _wasConstructorCalled; public CreateMe() { _wasConstructorCalled …

6
Warum heißt Reflexion Reflexion statt Selbstbeobachtung?
Was ist der Ursprung des Begriffs Reflexion? Es scheint eher eine Selbstbeobachtung zu sein. Warum heißt es nicht so? Selbstbeobachtung : Ein Blick nach innen; speziell die Handlung oder der Prozess der Selbstprüfung. Reflexion : der Akt des Reflektierens oder der Zustand des Reflektierens. ein Bild; Darstellung; Gegenstück eine Fixierung …

4
Wie erhalte ich die PropertyInfo einer bestimmten Eigenschaft?
Ich möchte die PropertyInfo für eine bestimmte Eigenschaft erhalten. Ich könnte benutzen: foreach(PropertyInfo p in typeof(MyObject).GetProperties()) { if ( p.Name == "MyProperty") { return p } } Aber es muss einen Weg geben, etwas Ähnliches zu tun typeof(MyProperty) as PropertyInfo Gibt es? Oder bin ich nicht in der Lage, einen …
79 c#  reflection 


6
Reflexion zur Identifizierung von Erweiterungsmethoden
Gibt es in C # eine Technik, bei der mithilfe von Reflexion ermittelt wird, ob einer Klasse eine Methode als Erweiterungsmethode hinzugefügt wurde? Kann bei einer Erweiterungsmethode wie der unten gezeigten festgestellt werden, dass Reverse () zur Zeichenfolgenklasse hinzugefügt wurde? public static class StringExtensions { public static string Reverse(this string …


6
Java Reflection erhält alle privaten Felder
Ich frage mich, ob es eine Möglichkeit gibt, alle privaten Felder einer Klasse in Java und deren Typ zu erhalten. Nehmen wir zum Beispiel an, ich habe eine Klasse class SomeClass { private String aaa; private SomeOtherClass bbb; private double ccc; } Nun würde Ich mag alle privaten Felder erhalten …

9
Gson TypeToken mit dynamischem ArrayList-Elementtyp
Ich habe diesen Code: Type typeOfObjectsList = new TypeToken<ArrayList<myClass>>() {}.getType(); List<myClass> objectsList = new Gson().fromJson(json, typeOfObjectsList); Es konvertiert eine JSON-Zeichenfolge in ein ListObjekt. Aber jetzt möchte ich dies ArrayListmit einem dynamischen Typ (nicht nur myClass) haben, der zur Laufzeit definiert wird. Der ArrayListArtikeltyp des wird mit Reflexion definiert . Ich …

10
Wie erhalte ich die MethodInfo einer Java 8-Methodenreferenz?
Bitte schauen Sie sich den folgenden Code an: Method methodInfo = MyClass.class.getMethod("myMethod"); Dies funktioniert, aber der Methodenname wird als Zeichenfolge übergeben, sodass dies auch dann kompiliert wird, wenn myMethod nicht vorhanden ist. Auf der anderen Seite führt Java 8 eine Methodenreferenzfunktion ein. Es wird zur Kompilierungszeit überprüft. Ist es möglich, …

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.