使用static聲明的代碼塊,稱爲靜態塊,靜態塊主要目的是爲靜態屬性進行初始化。
class Demo{
{
System.out.println("構造塊。。。");
}
static{
System.out.println("靜態塊。。。");
}
public Demo(){
System.out.println("構造函數。。。");
}
}
public class CodeDemo03{
static {
System.out.println("主類中的靜態塊。。。");
}
public static void main(String[]args){
for(int i=0;i<3;i++){
new Demo();C
}
}
}
運行結果:
C:/mldn>javac CodeDemo03.java
C:/mldn>java CodeDemo03
主類中的靜態塊。。。
靜態塊。。。
構造塊。。。
構造函數。。。
構造塊。。。
構造函數。。。
構造塊。。。
構造函數。。。
從上面結果可以看出:
靜態塊只執行一次,而且優先於構造快,主函數