aide pour comprendre ce petit code java
s.v.p
aide pour comprendre
j'ai exécuté le code suivant :
Code:
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!