類初始化時構造函式呼叫順序:
(1)初始化物件的儲存空間為零或null值;
(2)呼叫父類建構函式;
(3)按順序分別呼叫類成員變數和例項成員變數的初始化表示式;
(4)呼叫本身建構函式。
例子:
public class dog extends animal
public static void main(string args)
}class animal
}class cat
}
輸出結果:
animal構造方法
cat 構造方法
dog 構造方法
在我們的程式中,例項化乙個類物件的時候,執行順序為:
靜態塊父類構造器
本類中的塊
本類的構造器
Java中類初始化的順序
在建立物件時,物件所在類的所有資料成員會首先進行初始化,如果其中的成員變數有物件,那麼它們也會按照順序執行初始化工作。在所有類成員初始化完成後,才呼叫物件所在類的構造方法建立物件。構造方法作用就是初始化。靜態物件 變數 在非靜態物件前初始化。靜態物件 變數 只初始化一次,再次呼叫就不初始化了,但非靜...
Java中類的初始化順序
public class classinitordertest 成員變數 private string field member field 非靜態 塊 構造器 public classinitordertest public static void main string args 程式輸出結果 ...
Java類初始化順序
類的初始化順序 首先執行父類靜態的內容,父類靜態的內容執行完畢後,接著去執行子類的靜態的內容,當子類的靜態內容執行完畢之後,再去看父類有沒有非靜態 塊,如果有就執行父類的非靜態 塊,父類的非靜態 塊執行完畢,接著執行父類的構造方法 父類的構造方法執行完畢之後,它接著去看子類有沒有非靜態 塊,如果有就...