簡單瞭解java中靜態初始化塊的執行順序
阿新 • • 發佈:2020-01-07
這篇文章主要介紹了簡單瞭解java中靜態初始化塊的執行順序,文中通過示例程式碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
在java中,其應該是先於所有的方法執行。
下面是測試程式碼:
public class Test1 { static{ System.out.println("執行靜態初始化塊test1..."); } { System.out.println("執行初始化塊test1"); } public Test1(){ System.out.println("執行test1建構函式"); } } public class Test2 extends Test1{ static{ System.out.println("執行靜態初始化塊test2..."); } { System.out.println("執行初始化塊test2"); } public Test2(){ System.out.println("執行test2建構函式"); } } public class Test3 extends Test2{ static{ System.out.println("執行靜態初始化塊test3..."); } { System.out.println("執行初始化塊test3"); } public Test3(){ System.out.println("執行test3建構函式"); } } ---------------------------------------------------------------------------------------------------- public class Test { public static void main(String[] args){ Test3 t = new Test3(); } }
執行結果如圖:
從結果即可看出,靜態初始化塊的執行順序十分靠前,並且在靜態初始化塊之間,誰在程式的前面誰先執行。
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支援我們。