JAVA初始化順序

2021-06-28 12:10:01 字數 734 閱讀 4390

1.類的初始化順序  即為  類的靜態變數初始化賦值語句和靜態塊的載入順序(按出現的先後順序排列)

2.物件的初始化順序  即為  ①類的非靜態變數的初始化和非靜態塊的載入順序(按出現的先後順序排列)②建構函式

public class teststatic   

static

public teststatic(string str)

public static int print(string str)

public static void main(string args)

}

上述類初始化順序為:①②③④⑤⑥

對應的結果為:①(1)②(2,3,4)③(5,6,7)④(8)⑤(9)⑥(!!!!!和10)

②③靜態變數的賦值語句包含了類的初始化操作

結果:

1:k    i=0    n=0

2:m i=1 n=1

3:構造塊 i=2 n=2

4:t1 i=3 n=3

5:m i=4 n=4

6:構造塊 i=5 n=5

7:t2 i=6 n=6

8:i i=7 n=7

9:j i=8 n=99

!!!!!

10:靜態塊 i=9 n=100

java初始化順序

1 父類靜態成員和靜態初始化塊 按在 中出現的順序依次執行 2 子類靜態成員和靜態初始化塊 按在 中出現的順序依次執行 3 父類例項成員和例項初始化塊 按在 中出現的順序依次執行 4 父類構造方法 5 子類例項成員和例項初始化塊 按在 中出現的順序依次執行 6 子類構造方法 public abstr...

java初始化順序

例如以下 package chapter5 public class demo1one public void printinfo public static void main string args 程式一開始先執行 private static string password 0721 這行 ...

JAVA初始化順序

1 當使用新建物件例項或者呼叫靜態成員變數或者方法時,初始化靜態變數 2 靜態變數在初始化時在前面的先初始化,靜態塊和靜態變數相同對待 在初始化過程中,有新建物件例項的時候,暫時停止後面的靜態變數初始化 3 靜態變數沒有初始化時,使用預設的初始值 如int為0 4 新建物件例項,對非靜態的成員變數進...