Java靜態代碼塊執行方法和順序

  1. 執行代碼塊格式:
static{
    procudure...
}

特色: 隨着類的加載而執行,且只執行一次,並優先於主函數。用於給類初始化。html

  1. 執行順序:

示例:
靜態代碼塊隨着類的加載而加載
有多個靜態代碼塊的,按代碼塊先後順序加載
一個代碼塊,只執行一次函數

class StaticCode1{
    static{
        System.out.println("x");
    }
}

public class StaticDemo1{
    static{                   //第一步,先加載主函數所在類,因此先加載並執行這段靜態代碼塊。
        System.out.println("y");
    }
    public static void main(String[] args){
        new StaticCode1();     //第三步,加載StaticCode1類
        new StaticCode1();     //第四步,類只加載一次,靜態代碼塊只執行一次,這裏再也不執行
        System.ou.println("over");  //第五步,輸出打印
    }
    static{                   //第二步,多個靜態代碼塊,按前後順序執行
        System.out.println("z");
    }
}

輸出:code

y
z
x
over

參考資料htm

相關文章
相關標籤/搜索