gpt4 book ai didi

java - 继承和私有(private)方法

转载 作者:行者123 更新时间:2023-12-02 00:02:43 32 4
gpt4 key购买 nike

给出以下代码块:

public class Trial {
public static void main (String[] args){
B obj = new B();
obj.doMethod(); #prints "From A".
}
}

class A {
private void method(){System.out.print("from A");}
public void doMethod(){method();}
}

class B extends A {
public void method(){System.out.print("from B");}
public void doMethod(){super.doMethod();}
}

事实证明,调用了类 A 中的 method()。为什么是这样?

最佳答案

您明确地以这种方式实现它。 super 从基类调用方法,基类是 A

public void doMethod(){super.doMethod();}

所以方法链是这样的:

B.doMethod() -> A.doMethod() -> A.method() -> "from A"

关于java - 继承和私有(private)方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14494721/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com