héritage et polymorphisme.
Bonjour, voici 4 classes, et je patauge un peu dans l'héritage et le polymorphisme :
Code:
1 2 3 4 5
|
public class CBadge {
public void lecture(){
}
} |
Code:
1 2 3 4 5 6 7 8
|
public class CGenerique extends CBadge {
String maValeur = "CGenerique";
public void lecture(){
System.out.println(maValeur);
}
} |
Code:
1 2 3 4
|
public class CGeneriqueMetier extends CGenerique {
int maValeur = 12;
} |
Code:
1 2 3 4 5 6 7 8 9
|
public class Main {
public static void main(String[] args) {
CBadge maCarte;
maCarte = new CGeneriqueMetier();
maCarte.lecture();
}
} |
Bon, je reconnais que c'est assez tordu. Je pensais avoir 12 comme résultat mais j'ai CGenerique.
J'ai mis des points d'arrêts et j'ai bien chaineUtilisateur = 12 dans la pile, mais c'est "CGenerique" qu'il affiche.
Quelqu'un peut m'expliquer. Comment je doit procéder si je veux réutiliser le code de lecture() et pas le recopier dans la classe CGeneriqueMetier ?
Merci d'avance
harf