我的一个朋友问我哪个会加载第一个静态变量或静态块。
我的答案指向静态变量。
所以他给了我两个方程并说区分它们
第一个方程
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
我试图反编译字节码,发现上面两个方程都是一样的。请帮助我区分它们。当静态变量初始化时我很困惑。