Bonjour à tous,
Je n'arrive pas bien à comprendre l'héritage avec une méthode privé, public et protected.
Si je mets ce code là, les résultats obtenus sont :
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
21
22
23
24
25 class A { public void machin() { truc(); } private void truc() { System.out.println("truc de A"); } } class B extends A { private void truc() { System.out.println("Truc de B"); } } class Test { public static void main (String [] args) { A a = new A(); a.machin(); B b = new B(); b.machin(); a=b; a.machin(); } }
Code suivant :truc de A
truc de A
truc de A
J'ai également le même résultat :
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
21
22 class A { public void machin() { truc(); } private void truc() {System.out.println("truc de A"); } } class B extends A { public void truc() { System.out.println("Truc de B"); } } class test { public static void main (String [] args) { A a = new A(); a.machin(); B b = new B(); b.machin(); a=b; a.machin(); } }
Si quelqu'un pourrait m'expliquer comment puis-je comprendre le résultat obtenu. J'ai dû mal comprendre la façon de faire avec des champs non-public.truc de a
truc de a
truc de a
D'avance, je vous remercie.
Partager