public class text193 {
public static void main(String[] args) {
monter [] ma=new monter[3];
ma[0]=new vampire();
ma[1]=new dragon();
ma[2]=new monter();
for(int x=0;x<3;x++){
ma[x].frighten(x);
} } public static class monter {
boolean frighten(int d) {
System.out.println("arrrgh");
return true;
}
} public static class vampire extends monter {
boolean frighten(int x) {
System.out.println("a bite?");
return false;
}
} public static class dragon extends monter {
boolean frighten(int degree) {
System.out.println("breath fire");
return true;
}
}}这段代码中的return true和false有何用意?

解决方案 »

  1.   

    ^_^frighten是“吓人”的意思,所以看这段代码要表达的意思是:哪一种怪物(monster)是吓人的:
    吸血鬼vampire会咬人bite,不吓人,所以是false
    龙dragon会喷火breath fire,是吓人的,所以是true
    怪兽monster会叫arrrgh,是吓人的,所以是true
      

  2.   

    所以这个frighten用的不太合适,应该改为isFrightening更好一些,代码的可读性就更好了
      

  3.   

    没什么意思,他们的方法是boolean型,那就返回true或false,把他改为void就不要返回什么的了