
Envoyé par
PitMaverick78
Il est ou l'heritage la dedans?

Désolé, j'ai tapé un peu trop vite
J'ai édité le post.

Envoyé par
davjan
Est tu sur de ce que tu post? Je ne vois pas l'intérêt de transtyper maVariable en ClasseDerivee1 si tu as fait
maVariable= new ClasseDerivee1();
Le problème, c'est que j'appelle une méthode qui prend un paramètre de type "ClasseDerivee1" et comme ma variable est déclarée du type "ClasseDeBase", le compilateur me dit que je n'ai pas le bon type de paramètre pour ma fonction. Je suis obligé de l'appeler comme ceci:
Variable2.fonctionlambda((ClasseDerivee1) maVariable);
Là, ça compile, mais à l'exécution j'ai une erreur
Impossible de transtyper implicitement "ClasseDeBase" en "ClasseDerivee", il doit manquer un cast.
Comme ma variable contient bien un objet du bon type, je voudrais savoir comment le forcer à l'accepter.
Partager