Cela semble si évident. Comment puis-je lancer un objet myObjet au type myObjet.getClass? J'ai essayé des combinaisons de forName(), cast et autres ... aucun ne semble fonctionner: sCoulée dynamique:
Le problème est que j'ai une liste d'objets et je voudrais les ramener à leur type d'origine (qui est donné par myObjet.getClass.getName()).
Cordialement, Tim
Oui, c'est Java et il est certainement pas tort. Laissez-moi vous expliquer le problème. Imaginez un programme qui traite des formes simples comme les carrés et les cercles qui sont des classes dérivées de Form, la classe principale.
Donc il y a une fonction de recherche qui renvoie un formulaire, mais vous devez fournir le type et une référence de la forme (un numéro, par exemple):
Form myForm= searchForm(String formType, String formRef)
Je sais ce que le formulaire retourne va être parce que j'ai donné ces arguments à la fonction de recherche: un carré, par exemple. L'objet retourné sera toujours un formulaire, mais je veux qu'il soit de la classe Square, donc j'ai besoin de le lancer. Il est compatible car Square hérite de Form.
Le seul problème est que "formType" est variable, il pourrait bien être Square, mais il pourrait aussi être "Circle". C'est pourquoi j'ai besoin d'une distribution générique pour l'objet de retour.
Si je fais un myForm.getClass(). GetName(), j'obtiens "Square". J'ai donc besoin de lancer myForm sur myForm.getClass().
Voyez-vous le problème?
Quelle langue est-ce? –
Cela semble être une sorte de (mauvais) Java. De plus, je ne comprends pas le chemin. Pouvez-vous s'il vous plaît expliquer? – dmeister