2016-11-27 65 views
0

我已指示做到以下幾點:如何從另一個繼承類調用超級構造函數?

  • 創建於食肉無參數調用動物超級一個構造。

食肉動物是動物的一個子類,它是超級類。所以我打算在Carnivore的Animal中調用構造函數。下面是代碼:

動物超一流

abstract public class Animal 
{ 

    int age; 
    String name; 
    String noise; 

Animal(String name, int age) 
{ 
    this.age = age; 
    this.name = name; 
} 

Animal() 
{ 
    this("newborn", 0); //This is the super class that needs to be called in Carnivore. 
} 

} 

食肉動物子類

public class Carnivore extends Animal 
{ 

    Carnivore() 
{ 
    //Call Animal super constructor 
} 

} 

我沒有,所以我仍然得到與傳承工作與它握手。任何反饋表示讚賞,謝謝。

回答

2

您可以使用super()調用父類的構造函數,如下所示:

public class Carnivore extends Animal { 

    Carnivore() { 
    super(); //calls Animal() no-argument constructor 
    } 
} 

隨着超(),超類無參數的構造函數被調用。通過 super(參數列表),調用具有匹配的 參數列表的超類構造函數。

我建議您參考here瞭解繼承的基礎知識和super

相關問題