public class InitializationOrder{ public static void pip(){ B b = new B(15); A a = b; System.out.println( a.i ); System.out.println( b.i ); } } class A { int i = foo(); A(int i){ this.i = i + 10; } int foo(){ return 8; } } class B extends A { int i = 55; B(int i){ super(i+4); this.i = super.i + 3; } int foo(){ return i; } }