【问题标题】:How to select an overrided method?如何选择覆盖的方法?
【发布时间】: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();在基类中,该方法将获得“在水中移动”。 有一种方法可以根据我的喜好从基础或派生中选择方法的调用?实质上,保持两个输出并选择两者中的一个或另一个。

感恩节

【问题讨论】:

标签: java inheritance methods


【解决方案1】:

随意定义一个新方法...

public void moveAsAmphibian(){

    super.moveInWater();
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-07-14
    • 2016-11-11
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-10-04
    • 2020-07-28
    相关资源
    最近更新 更多