Java 如何选择重写的方法?
我有以下代码:Java 如何选择重写的方法?,java,inheritance,methods,Java,Inheritance,Methods,我有以下代码: 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"); } pu
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()放进去;在基类中,该方法将得到“在水中移动”。
有没有一种方法可以根据我的意愿从base或derivate中选择方法的调用?实质上,保持两种产出,并从两种产出中选择一种或另一种
Grazie请随意定义一种新方法
public void moveAsAmphibian(){
super.moveInWater();
}
将您的方法名称更改为
moveInWater()
@DimaSan:是的,对不起:)另外,您在Frog
类的moveInWater()
函数末尾缺少了一个
。可能是@CarlosRivero:的重复,因为我是用智能手机编写代码的