对接口实现和扩展类的怀疑很小。 这是我的代码。
public class intercheck extends inter implements in {
public static void main(String[] args) {
intercheck a = new intercheck();
a.show();
}
}
class inter {
public void show() {
System.out.println("Class Show");
}
}
interface in {
public void show() {
System.out.println("Interface show");
}
}
我运行了这段代码,并知道将显示class inter show()方法。
想知道除此之外的逻辑。
答案 0 :(得分:1)
在超类中实现show()
并用其扩展类时,该类从超类继承了show()
,从而实现了接口要求的内容。
答案 1 :(得分:0)
简短答案:
interface in {
default void show() {
System.out.println("Interface show");
}
}
仅当实现类没有实现时才执行
show()
(默认值仅是从Java 8引入的-接口中声明的方法根本不能包含主体)。
class intercheck
在其父类inter
中实现了,所以...
class inter {
public void show() {
System.out.println("Class Show");
}
}
执行。这就是背后的逻辑。
答案 2 :(得分:0)