Java011Java程序初始化順序

Java011Java程序初始化順序

1.父類靜態變量

2.父類靜態代碼塊

3.子類靜態變量

4.子類靜態代碼塊

5.父類非靜態變量

6.父類非靜態代碼塊

7.父類構造器

8.子類非靜態變量

9.子類非靜態代碼塊

10.子類構造器

Java程序初始化一般遵循3+1個原則:

1.靜態對象(變量)先於非靜態對象(變量)初始化,其中靜態對象(變量)只初始化一次,而非靜態對象(變量)可能會初始化很多次

2.父類優先於子類進行初始化

3.按照成員變量的定義順序進行初始化。即使變量定義散佈於方法之中,它們依然在任何方法(包括構造器)被調用前先初始化。

4.靜態初始化只有在必要時刻纔會進行。只有第一個對象創建(或第一次訪問靜態數據)的時候,它們纔會被初始化。此後,靜態對象不會再次被初始化。

 

 

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