Bonjour j'ai un soucis avec le polymorphisme j'ai en fait cet exemple là
Je m'attendais à cette sortie :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20 public class Animal { public static void direQuelqueChose() { System.out.print(" Un Animal"); } } class Bovins extends Animal { public static void direQuelqueChose() { System.out.print(" Un Bovin!"); } public static void main(String[] args) { Animal[] animals = { new Animal(), new Bovins() }; for (Animal a : animals) { a.direQuelqueChose(); } new Bovins().direQuelqueChose(); } }
un Animal Un Bovin Un Animal
Or c'est la sortie du programme me fait tourner en bourrique !
elle donne :
Un Animal Un Animal Un Bovin!
Si j'ai bien compris normalement, -dites le moi si je me trompe- le polymorphisme ne s'applique pas pour pour des membres static. Pourquoi que j'ai ce résultat ?
Un Animal Un Animal Un Bovin!
Soit j'ai rien compris au polymorphisme et à Java, soit il y a quelque chose qui cloche, mais je ne sais pas d'où ça peut venir
Bien cordialement.
Partager