部分代码如下:publicabstractclassAnimal//animal类定义为抽象类{publicstaticfinalbooleanisMammal=false;publicstaticfinalbooleanisCarnivorous=false;publicabstractvoidsetMood...
部分代码如下:
public abstract class Animal //animal类定义为抽象类
{
public static final boolean isMammal=false;
public static final boolean isCarnivorous=false;
public abstract void setMood(int newMood);
public abstract int getMood();
public static final int SCARE=0;
public static final int COMFORTED=1;
public static final int USUAL=2;
public static final int mood=COMFORTED;
public abstract String sayHello(int nowMood);
}
class Frog extends Animal implements WaterAnimal
{
protected boolean isMammal;
protected boolean isCarnivorous;
protected int mood;
public Frog(){
isMammal=false;
isCarnivorous=false;
mood=0;
}
public void setMood(int newMood){
mood=newMood;
}
public int getMood(){
return mood;
}
public String sayHello(int nowMood){
this.setMood(nowMood);
if(mood.equals(Animal.COMFORTED))
return ("呱呱呱");
else if(mood.equals(Animal.SCARE))
return ("扑通一声跳入水中");
else
return ("一动不动");
}
}
在编译时总是提示if(mood.equals(Animal.COMFORTED))这一句中无法取消引用。有哪位人士知道其中原因吗??
展开
本文探讨了一个关于Java抽象类Animal的实现问题,特别是在子类Frog中遇到的编译错误:无法对整型变量mood使用equals方法进行比较。文章详细介绍了错误发生的原因及解决方法。
16万+

被折叠的 条评论
为什么被折叠?



