Je suis en train de faire une des opérations suivantes:Coulée des types de classes génériques à des méthodes non génériques ou appelantes de leurs instances?
Dummy d = (Class<Dummy>)super.getEntity(); // incompatible Types - cannot cast
Dummy d = (Dummy)super.getEntity(); // incompatible Types - cannot cast
d.foo();
ou
Class<Dummy> d = (Class<Dummy>)super.getEntity(); // works
d.foo(); // method cannot be found
factice d est défini dans une superclasse abstraite comme suit:
Class<T> dummy;
public Class<T> getEntity() { return dummy; }
Est-il possible de appeler une méthode (foo) dans un objet de type classe générique? Le point est que la superclasse ne devrait pas se soucier du type de l'objet, de sorte que la fonctionnalité peut varier selon les classes qui s'étendent.
est votre méthode « getEntity() » sur la superclasse supposée retourner un objet de type ou classe ? Il semble que votre membre devrait être défini comme "T mannequin" au lieu de "Classe dummy" et getEntity() devrait retourner une instance de T. –