jacti a écrit :
<HS>
Tiens, un revenant !-) Ca marche la musique ?
</HS>
Bruno Desthuilliers wrote:
Jérémie a écrit :
Bonjour à tous,
Mon post sera peut-être plus pertinent sur un espace Java, je m''excuse si
c'est le cas.
Ma question est : Lors de la conversion d'un objet en un autre objet (cast),
Lors de la conversion d'une variable d'un type en un autre type... Ca n'implique pas forcément de modification de l'"objet" (en tant que structure de donnée stockée en mémoire) lui-même.
celle -ci ne
peut-elle se faire que dans le sens "généralisation", ou bien bien aussi
dans le sens "spécialisation" ?
Effectivement, ta question serait plus à sa place sur fr.comp.lang.java.
Et pourquoi ?, le downcasting existe aussi en C++ avec le dynamic_cast.
Oui, et probablement dans tous les langages objets à typage statique déclaratif - mais pas forcément avec toujours des règles strictement équivalentes, d'où ma remarque - l'OP ayant précisé que sa question portait sur les casts en Java (pas en C++).
Le downcasting n'est pas une conversion, c'est seulement une promesse faite au compilateur que l'objet "downcasté" est bien de la "bonne sous-classe".
Souvent (mais pas toujours), le fait d'être obligé, à un moment donné, d'utiliser le downcasting, révèle une faiblesse de conception...
<troll mode="un petit dernier pour la route ?">
Une faiblesse de conception du langage ?-)
</troll>