Java程序初始化順序(一看就懂)

順序:
父類(靜態域按順序加載)–>子類(靜態域按順序加載) –>父類(非靜態變量,非靜態代碼塊,構造函數)–>子類(非靜態變量,非靜態代碼塊,構造函數)
靜態域:靜態變量和靜態塊

舉例:
這裏寫圖片描述
這裏寫圖片描述
這裏寫圖片描述
這裏寫圖片描述


總結:
(1)靜態域是按先後順序加載的
(2)當static變量初始化的時候先去調用構造塊,再去調用構造函數(因爲靜態域只能加載一次,這是第二次去加載的話,就直接調用構造塊和構造器了)
(3)執行完靜態域以後就是執行Main方法了
(4)靜態域只能被調用一次,第二次創建t2的時候就直接用構造塊和構造器初始化了。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章