[英]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;
}
}
我不确定如何调用另一个构造函数。 如果有人可以指出为什么以及如何做到这一点。
我不确定你在哪里获得charId
和charHealth
的值,也许这些是常量,但这是你如何做到的:
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.