子类在调用继承的方法(Java)时会使用父类还是子类方法

简·弗雷泽(Jane Fraser)

如果我在超类中有两个方法,则将它们分别称为a()和b(),而b()则调用a(),并且我有一个重写a()的子类,那么,如果我在实例上调用b()在子类中,它将使用超类中的a()还是子类中的a()的变体?

在此先感谢您提供任何答案:我在搜索中没有发现任何问题,因为该问题很难用短语来表达。

纳幸

它将在子类中调用一个。您可以设计一个实验来自己测试:

class Super {
    void a() { System.out.println("super implementation"); }
    void b() { System.out.println("calling a()..."); a(); }
}


class Sub extends Super {
    void a() { System.out.println("sub implementation"); }
}


public class Main {
    public static void main(String[] args) {
        Sub x = new Sub();
        x.b();
        // Prints:
        //   calling a()...
        //   sub implementation
    }
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

使子类从 tkinter 中的父类继承方法

调用子类方法而不调用父类

如何使用父类的方法调用子类的方法?

JS - 为什么子类方法会使用 Parent.prototype.method.call 调用父类方法?

Java继承:在超类中调用子类方法

Ruby子类不继承父方法或无法在类主体中调用父方法

子类的动态方法在lambda捕获中使用时会调用父类的虚拟方法/导致分段错误

在子类对象java上调用父类的方法

父类可以调用子类方法吗?

父类中子类的c ++调用方法

函数调用父类方法而不是子类?

Java Reflection:从子类调用继承的方法

如何使用继承的类方法并维护子类

Java:使用父类方法访问子类变量

Java:在子类中使用父类的静态方法

使用该子类的变量从子类调用父方法

Arduino在子类上使用父类方法

类继承,使用子类设置父类

子类从Ruby的父类继承包含的模块方法

如何从重写的子类方法调用超类的继承方法?

在子类中调用父方法

如何在同名的子类方法中调用父类方法?

Java的:使用接口从父类调用子类中的方法

如何在父类具有相同const字段的继承方法中使用子类的const字段?

在Java中,“ this”在继承该方法的子类上调用的超类方法中表示什么?

在子类中调用继承的类方法装饰器

如何从子类中调用重写的父类方法?

在父类和子类的构造函数中调用重写的方法

如何在Python的子类中调用父类的方法?