类的初始化
类的生命周期:装载->校验->准备->解析->初始化->使用->卸载
在准备阶段:给静态成员变量分配内存和默认初始化值,那么下面的代码中,a=0;
那么在执行静态代码块时,为什么不能输出a=0
静态代码块不是在初始化阶段运行吗?
public class Draft{
public static void main(String[]args){
System.out.println("主函数");
}
static Draft d=new Draft();
static{
System.out.println("a="+a);
}
static int a=99;
}