s.v.p
aide pour comprendre
j'ai exécuté le code suivant :

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
26
27
class A {
    int i = 1 ;
    int f() { return i ;}
    static char g() { return 'A' ;}
}
 
class B extends A {
    int i = 2 ;
    int f () {return -i ;}
    static char g() { return 'B' ;}    
}
 
public class Test {
    public static void main(String args[]) {
        B b = new B() ;
        System.out.println(b.i) ;
        System.out.println(b.f()) ;
        System.out.println(b.g()) ;
        System.out.println(B.g()) ;
 
        A a = b ;
        System.out.println(a.i) ;
        System.out.println(a.f()) ;
        System.out.println(a.g()) ;
        System.out.println(A.g()) ;
    }
}
et j'ai le résultat :

2
-2
B
B
1
-2
A
A

je ne comprend pas d'où vient le 1

Merci!