繁体   English   中英

用Java扩展类

[英]Extending Classes in Java

我正在尝试将一个类扩展到多个其他类,例如

public class Ability extends Character

由于这个原因,我的代码中出现错误:

隐式超级构造函数Character()未定义。 必须显式调用另一个构造函数Defense.java

我的代码是:

public class Character {
    int characterID;
    double characterHealth;

    public Character(int charID, double charHealth) {
        characterID = charID;
        characterHealth = charHealth;
    }
}

public class Defense extends Character {
    int armorClass;
    int difficultyClass;

    public Defense(int newAC, int newDC){
        armorClass = newAC;
        difficultyClass = newDC;
    }
}

我不确定如何调用另一个构造函数。 如果有人可以指出为什么以及如何做到这一点。

我不确定你在哪里获得charIdcharHealth的值,也许这些是常量,但这是你如何做到的:

public Defense(int newAC, int newDC)
{
    super(charId, charHealth);
    armorClass = newAC;
    difficultyClass = newDC;
}

从子类ctor:

super(charId, charHealth);

由于超类没有默认构造函数,因此必须显式调用非默认构造函数。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM