我有一个父类(super class)宠物,代码如下:
package pet;
public class pet {
int age;
float weight;
float height;
String color;
public void sleep(){
System.out.println(
"Good night, see you tomorrow");
}
public void eat(){
System.out.println(
"I'm so hungry...let me have a snack like nachos");
}
public String say(String aWord){
String petResponse = "OK!! OK!! " + aWord;
return petResponse;
}
}
我创建了宠物鱼的子类:
package pet;
public class Fish extends pet {
public static void main(String[] args) {
// TODO Auto-generated method stub
Fish myLittleFish = new Fish();
myLittleFish.sleep();
}
public String say(String something) {
return "Don't you know fish do not talk?";
}
}
然后我创建了另一个类 FishMaster:
package pet;
public class FishMaster {
public static void main(String[] args) {
Fish myFish = new Fish();
myFish.say("Hello");
}
}
当我运行 FishMaster 时,它不输出:难道你不知道鱼不说话吗? 它不输出任何内容。
这是为什么呢?我需要输入什么才能使其输出:难道你不知道鱼不说话吗?
这是《面向 child 、 parent 和祖 parent 的 Java 编程》一书中的类(class),我在另一个问题中找到了该书的链接。
最佳答案
say
返回一个字符串,但不显示它
System.out.println(myFish.say("Hello"));
关于java - 当重写方法 say(),然后运行程序时,我没有得到预期打印的内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27760432/