Articles of reflection

Déterminer si un object est de type primitif

J’ai un tableau Object[] et j’essaie de trouver ceux qui sont des primitives. J’ai essayé d’utiliser Class.isPrimitive() , mais il semble que je fasse quelque chose de mal: int i = 3; Object o = i; System.out.println(o.getClass().getName() + “, ” + o.getClass().isPrimitive()); imprime java.lang.Integer, false . Y a-t-il une bonne voie ou une alternative?

Eviter l’instance dans Java

Avoir une chaîne d’opérations “instanceof” est considéré comme une “odeur de code”. La réponse standard est “utiliser le polymorphism“. Comment pourrais-je le faire dans ce cas? Il existe un certain nombre de sous-classes d’une classe de base. aucun d’entre eux n’est sous mon contrôle. Une situation analogue serait avec les classes Java Integer, Double, BigDecimal […]

Comment puis-je vérifier si une méthode est statique en utilisant la reflection?

Je veux découvrir au moment de l’exécution UNIQUEMENT les méthodes statiques d’une classe, comment puis-je le faire? Ou comment différencier les méthodes statiques et non statiques.

C # liste générique comment obtenir le type de T?

Je travaille sur un projet de reflection, et maintenant je suis coincé. Si j’ai un object de «myclass» qui peut contenir une liste, est-ce que quelqu’un sait comment obtenir le type comme dans le code ci-dessous si la propriété myclass.SomList est vide? List myList = dataGenerator.getMyClasses(); lbxObjects.ItemsSource = myList; lbxObjects.SelectionChanged += lbxObjects_SelectionChanged; private void lbxObjects_SelectionChanged(object […]

Puis-je obtenir le nom du paramètre de méthode en utilisant la reflection Java?

Si j’ai un cours comme celui-ci: public class Whatever { public void aMethod(int aParam); } est-il possible de savoir que aMethod utilise un paramètre nommé aParam , de type int ?

Comment charger un assembly dans AppDomain avec toutes les références récursivement?

Je veux charger dans un nouvel AppDomain un assembly contenant une arborescence de références complexes (MyDll.dll -> Microsoft.Office.Interop.Excel.dll -> Microsoft.Vbe.Interop.dll -> Office.dll -> stdole.dll ) Si j’ai bien compris, lorsqu’un assembly est en cours de chargement dans AppDomain , ses références ne sont pas chargées automatiquement et je dois les charger manuellement. Alors quand je […]

Valeur de champ get générique de reflection

J’essaie de recevoir la valeur du champ par reflection. Le problème est que je ne connais pas le type de champs et que je dois le décider tout en obtenant la valeur. Ce code résulte avec cette exception: Impossible de définir le champ com java.lang.Ssortingng …. fieldName à java.lang.Ssortingng Field field = object.getClass().getDeclaredField(fieldName); field.setAccessible(true); Class […]

Récupération des noms / valeurs d’atsortingbuts hérités à l’aide de Java Reflection

J’ai un object Java ‘ChildObj’ qui est étendu de ‘ParentObj’. Maintenant, s’il est possible de récupérer tous les noms d’atsortingbuts et les valeurs de ChildObj, y compris les atsortingbuts hérités, en utilisant le mécanisme de reflection Java? Class.getFields me donne le tableau des atsortingbuts publics et Class.getDeclaredFields me donne le tableau de tous les champs, […]

Puis-je modifier un champ en lecture seule privé en C # en utilisant la reflection?

Je me demande, car beaucoup de choses peuvent être faites en utilisant la reflection, puis-je changer un champ en lecture seule privé une fois que le constructeur a terminé son exécution? (note: juste curiosité) public class Foo { private readonly int bar; public Foo(int num) { bar = num; } public int GetBar() { return […]

Comment créer dynamicment un object C # générique en utilisant la reflection?

En C # j’ai l’object suivant: public class Item { } public class Task { } public class TaskA : Task { } public class TaskB : Task { } Je veux créer dynamicment TaskA ou TaskB en utilisant la reflection C # ( Activator.CreateInstance ). Cependant, je ne saurais pas le type avant la […]