静态代码块:
格式:
static{
执行语句;
}
特点:随着类的加载而执行,之执行一次,优先于构造函数
用于给类进行初始化,
事例如下:
class StaticCode{
static{
System.out.println("a");
}
}
class StaticDemo{
static{
System.out.println("b");
}
public static void main(String[] args){
new StaticCod();
new StaticCod();
System.out.println("hello");
}
static{
System.out.println("d");
}
}
运行结果是什么?
答案如下:
b
d
a
hello
分析:
首先,主函数,先执行构造代码块,依次输出b和d,,new StaticCod()时,会先运行构造代码块,输出a,再new StaticCod()时,不会输出,因为构造代码块仅运行一次,已经存在了,不会在执行,最后输出hello |
|