On considère l'ensemble de classes ci-dessous. L'objectif est de savoir quelle est la sortie de la méthode main de la classe QuelleMethode.
Dans la méthode main :
class A {
void faire() {
System.out.println("niveau a");
}
}
class B extends A {
void faire() {
System.out.println("niveau b");
}
}
class C extends B {}
class QuelleMethode {
public static void main(String[] argv) {
A a;
a = new A();
a.faire(); // instruction 1
a = new B();
a.faire(); // instruction 2
a = new C();
a.faire(); // instruction 3
}
}
On obtient à l'exécution, avec notre programme :
niveau a
niveau b
niveau b
© Irène Charon Télécom ParisTech 2010