構造塊、靜態塊
阿新 • • 發佈:2018-11-29
構造塊:
{
//語句
}
靜態塊:
static{
//語句
}
靜態塊在類載入的時候執行,且只執行一遍。靜態變數也在類載入的時候初始化:
public class Test{
static int a=1;
static{
System.out.print(a);
System.out.print("2");
}
public static void main(String[] args) {
Test test=null;
}
}
輸出:12
構造塊在類初始化的時候執行
public class Test{ int b=4; { System.out.print("3"); System.out.print(b); } public static void main(String[] args) { Test test=new Test(); } }
輸出:34
執行順序:靜態塊--->構造快--->建構函式
public class Test{ int b=4; static int a=1; { System.out.println("3"); System.out.println(b); } static{ System.out.println(a); System.out.println("2"); } public One(){ System.out.println("5"); } public static void main(String[] args) { Test test=new Test(); } }
輸出:12345