当你在 Java 中扩展一个类时,你可以通过super引用来引用基类的成员。然而,当你有一个类A、那个implements和接口时B,你只能以B这种方式引用它的方法B.super.method()。为什么super第二种情况下的关键字必须以 为前缀B.?例子:interface Runner { default void run() { System.out.println("default Runner::run"); }}static class RunnerImpl implements Runner { public void run() { Runner.super.run(); // doesn't work without "Runner." }}
添加回答
举报
0/150
提交
取消