1: this() 方法只能在構(gòu)造函數(shù)里邊調(diào)用,而且必須是構(gòu)造函數(shù)的首句代碼。
2:super()函數(shù)也只能在構(gòu)造函數(shù)里邊調(diào)用,也是只能為首句代碼。
3:子類的構(gòu)造方法必須要調(diào)用一次父類的構(gòu)造方法(可能是隱式的調(diào)用默認的無參構(gòu)造方法);
4:如果有了帶參數(shù)的構(gòu)造方法,就不會有默認的無參的構(gòu)造方法。所以子類就必須調(diào)用父類的代參構(gòu)造函數(shù)(前提是父類沒有無參構(gòu)造方法)
5:如果類里沒有任何構(gòu)造函數(shù),虛擬機將為其默認創(chuàng)建一個無參的構(gòu)造函數(shù) 。
6:如果父類有無參的構(gòu)造函數(shù),子類可以不必顯示的調(diào)用super()方法去調(diào)用父類的構(gòu)造函數(shù)。jvm在構(gòu)建對象的時候會自動調(diào)用父類的這個無參數(shù)的構(gòu)造函數(shù)的。
7:調(diào)用構(gòu)造函數(shù)不能直接用構(gòu)造函數(shù)名的方式調(diào)用,只能用this()或super()方法或他們的重載方法,來調(diào)用本身或父類的構(gòu)造函數(shù)