J'imagine qu'il doit y avoir un moyen d'utiliser la réflexion pour faire ce que je veux faire.
Je dois être capable de prendre une chaîne de caractères au moment de l'exécution qui est d'une certaine classe, par exemple :
string s = "mypackage.MySuperClass"
Alors je peux avoir un objet d'un certain type. Il peut s'agir d'un des objets suivants :
mypackage.MySuperClass obj = new mypackage.MySuperClass();
ou
mypackage.MySubClass obj2 = new mypackage.MySubClass();
ou
someotherpackage.SomeOtherClass obj3 = new someotherpackage.SomeOtherClass();
Ce que j'ai besoin de faire, c'est de voir si un objet (dont le type est déterminé au moment de l'exécution), est égal à la chaîne s (qui est également déterminée au moment de l'exécution par des moyens complètement différents).
Dans les cas ci-dessus, je voudrais que obj et obj2 soient du même type que s (puisque MySubClass est une sous-classe de MySuperClass), mais pas obj3.
Existe-t-il un moyen simple de faire cela en Java ? Peut-être quelque chose utilisant instanceOf ?