1、先提乙個小問題,父類中有靜態塊、非靜態塊、建構函式,子類中有靜態塊、非靜態塊、建構函式,new子類物件的時候,上述六項執行順序是什麼?
先上**
class animal
public animal()
}class dog extends animal
public dog()
}public class initorder
}
執行結果如下所示
parent class static code
son class static code
parent class non-static code
parent class constructor
son class non-static code
son class constructor
2、在同乙個類中,全域性變數的初始化總是優先於建構函式。 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 新建物件例項,對非靜態的成員變數進...