java子類繼承父類的構(gòu)造方法 java中的父類必須寫無參數(shù)的構(gòu)造函數(shù)嗎?
java中的父類必須寫無參數(shù)的構(gòu)造函數(shù)嗎?問題是,當我們創(chuàng)建一個類時,如果我們不創(chuàng)建構(gòu)造函數(shù)(即使它沒有參數(shù))。JVM幫助我們創(chuàng)建一個默認構(gòu)造函數(shù),也稱為無參數(shù)構(gòu)造函數(shù)。但是,如果我們創(chuàng)建一個構(gòu)造函數(shù)
java中的父類必須寫無參數(shù)的構(gòu)造函數(shù)嗎?
問題是,當我們創(chuàng)建一個類時,如果我們不創(chuàng)建構(gòu)造函數(shù)(即使它沒有參數(shù))。JVM幫助我們創(chuàng)建一個默認構(gòu)造函數(shù),也稱為無參數(shù)構(gòu)造函數(shù)。但是,如果我們創(chuàng)建一個構(gòu)造函數(shù),JVM將不再為我們生成默認的構(gòu)造函數(shù)。有時需要寫出默認構(gòu)造函數(shù),即無參數(shù)構(gòu)造函數(shù)。因此,當類被繼承時,子類將在默認情況下調(diào)用無參數(shù)構(gòu)造函數(shù)。如果要顯示調(diào)用父類的構(gòu)造函數(shù),可以在子類的構(gòu)造函數(shù)中使用super()的第一句話。(構(gòu)造函數(shù)中只能調(diào)用一次構(gòu)造函數(shù))。如果不在父類中編寫無參數(shù)構(gòu)造函數(shù),則必須在子類構(gòu)造函數(shù)中調(diào)用父類(在第一句中編寫)中的無參數(shù)構(gòu)造函數(shù)。