【发布时间】:2017-06-05 08:44:46
【问题描述】:
我有这个代码:
class Amphibian {
public void moveInWater(){
System.out.println("Moving in water");
}
}
public class Frog extends Amphibian {
public void moveInWater() {
System.out.println("... from the Land");
}
public static void main (String[] args) {
Frog wood = new Frog();
wood.moveInWater();
}
}
我知道被覆盖的方法会得到输出: “......来自土地”,如果我把 super.moveInWater();在基类中,该方法将获得“在水中移动”。 有一种方法可以根据我的喜好从基础或派生中选择方法的调用?实质上,保持两个输出并选择两者中的一个或另一个。
感恩节
【问题讨论】:
-
将您的方法名称更改为
moveInWater() -
@DimaSan:是的,对不起:)
-
另外,您在
moveInWater()的Frog类的函数末尾缺少一个}。 -
@CarlosRivero:因为我是用智能手机编写的代码
标签: java inheritance methods