2016-11-27 114 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