class Insect{
private int i = 9;
protected int j;
Insect(){
j = 39;
}
private static int x1 = printInit("static Insect.x1 initialized");
static int printInit(String s){
System.out.println(s);
return 47;
}
}
类加载的顺序应该是1、static属性;2、static方法。
那么应该是private static int x1先执行,然后执行static int printInit方法。
但是属性定义时需要调用printInit方法,这是怎么调用的?