哪个将首先加载静态变量或静态块?
我的一个朋友问我,哪个会加载第一个静态变量或静态块。
我的答案指向静态变量。
所以他给了我两个方程式,并说要区分它们
第一个方程
public class Some {
public static void main(String args[])
{
System.out.println(Some.x);
}
static {
System.out.println(Some.x);
}
static int x=90;
}
输出: 0 90
第二等式
public class Some {
public static void main(String args[])
{
System.out.println(Some.x);
}
static int x=90;
static {
System.out.println(Some.x);
}
}
操作: 90 90
我试图反编译字节码,发现上面的两个等式都是一样的。请帮我区分它们。我对静态变量何时初始化感到困惑。