gpt4 book ai didi

java - 抽象类非抽象方法调用

转载 作者:行者123 更新时间:2023-11-30 08:09:18 24 4
gpt4 key购买 nike

这似乎是基本问题。但值得在面试前澄清。

我在抽象类中有一个非抽象方法。它的具体类覆盖了该方法。但是我想调用父类的原始方法来调用而不是重写方法。有什么办法吗?

据我所知,无法调用原始方法?

public abstract class Testabstract {

public void t1() {
System.out.println("parent");
}

}


public class Testconcrete extends Testabstract {

public void t2() {
System.out.println("child11");
}

public void t1() {
System.out.println("childss");
}

}

public class Main {

public static void main(String[] args) {

Testconcrete a = new Testconcrete();

a.super.t1();// compile error
a.t2();

}
}

最佳答案

不,您不能直接调用父类(super class)的重写方法。这是设计使然;子类可能会添加某些正确性所必需的行为(例如维护某种缓存或其他数据结构)或功能要求(例如日志记录)。绕过子类的功能会使模型的正确性面临风险,并破坏确保它的封装。

关于java - 抽象类非抽象方法调用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32547350/

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