當前位置:學者齋 >

計算機 >java語言 >

在子類中應該如何調用父類的構造方法

在子類中應該如何調用父類的構造方法

在Java中,子類可以繼承父類的非私有成員變量和成員方法(不是以private關鍵字修飾的)作為自己的成員變量和成員方法。但是,不能繼承父類的構造方法,那麼在子類中應該如何調用父類的構造方法?今天本站小編為大家整理的在子類中應該如何調用父類的構造方法,僅供學習參考,歡迎大家閲讀瀏覽!

在子類中應該如何調用父類的構造方法

答:子類可以調用由父類聲明的`構造方法。但是必須在子類的構造方法中使用super關鍵字來調用。其具體的語法格式如下:

super([參數列表]);

例如,在動物類Animal中添加一個默認的構造方法和一個帶參數的構造方法,具體代碼如下:

1public class Animal{

2 String skin = "不清楚"; // 成員變量

3 public Animal () { // 默認構造方法

4 }

5 public Animal(String strSkin) { // 帶參數的購造方法

6 skin = strSkin;

7 }

8}

這時,如果想在子類Dog中使用父類的帶參數的構造方法,則需要在子類Dog的構造方法中通過以下代碼進行調用。

1public class Dog extends Animal{

2 public Dog (){

3 super("白色"); //使用父類的帶參數的構造方法

4 }

5 public static void main(String[] args) {

6 Dog dog=new Dog();

7 tln("小狗的毛是"+);

8 }

9}

運行上面的代碼將顯示如圖1所示的運行結果。

專家點評

在Java中,子類不能繼承父類的構造方法,但是如果子類沒有編寫調用父類構造方法的代碼,那麼Java將自動在子類的構造方法中添加super();語句,用於調用父類的無參構造方法。所以説即使您沒有手動指定調用父類的構造方法,父類的無參構造方法也將會被執行。因此,在Java中,如果想調用父類中無參的構造方法,則可以使用super();語句調用,也可以不使用super();語句調用。但是如果要調用帶參數的構造方法,則需要使用super()方法。

  • 文章版權屬於文章作者所有,轉載請註明 https://xuezhezhai.com/zh-hk/jsj/java/2jmxd.html