java - 从子类调用重载函数

标签 java inheritance overloading

我有两个非常相似的类(class)。假设birdhawk

class Bird
{
  ...
  public void fly()
  {
    //do a lot of stuff here
  }
}

class Hawk extends Bird
{
  public void fly()
  {
    parent.fly() // how can I call the overloaded parent method?
    //a couple changes specific to hawk here
  }
}

我希望能够同时拥有小鸟和老鹰。当在 Hawk 上调用 Fly() 时,我仍然想运行 Bird 的 Fly 方法,只是最后进行了一些更改。我以正确的方式处理这件事吗?

最佳答案

尝试使用 super 关键字,例如:

class Hawk extends Bird {
    public void fly() {
        super.fly() // use keyword super instead of parent
    }
}

关于java - 从子类调用重载函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28555340/

相关文章:

方案:重载内置程序,一般重载

C#反射,获取重载方法

java - For 循环返回时不退出

java - 1 v.add vector java 中的 2 个元素

java - 重写父类(super class)的方法。不明确的引用编译时错误

c# - 你能根据传递的参数构造一个不同的派生类吗?

java - 访问扩展类中的属性/常量

java - 使用 ACTION_IMAGE_CAPTURE 从相机拍摄照片后如何跳过或避免 'retake and review' 选项

Java:如果这是instanceof Something,则显示仅属于Something的变量?

php - 将 __set 与数组一起使用已解决,但为什么呢?