Bonjour j'ai un soucis avec le polymorphisme j'ai en fait cet exemple là


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();
	}
}
Je m'attendais à cette sortie :

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.