- 關於靜態變量和非靜態變量的區別
-
靜態變量:被static修飾的變量,加載類的時候被創建,不隨對象的創建而改變,靜態變量位於方法區,類消失對應的變量消失。
-
非靜態變量:不被static修飾的變量,每創建一次對象,就會為變量分配一次內存,存放在堆內存中,對象消失對應的變量消失。
-
JAVA中初始化的順序:
- 加載類;
- 靜態變量初始化
- 靜態代碼塊;【其只能調度靜態的,不能調度非靜態的】
- 成員變量
- 構造代碼塊
- 構造方法
- 普通代碼塊