【发布时间】:2019-02-25 04:51:07
【问题描述】:
Interface 隐式继承 Object 类。因为接口SubInterfacedefault方法调用了ObjectclasshashCode方法。那么有可能如何&为什么..?
package com.oca.test.exam;
interface SuperInterface {
default void printStuff() { System.out.println("Default Method"); }
}
interface SubInterface extends SuperInterface {
default void doStuff() {
this.printStuff();
System.out.println(this.hashCode());
}
}
public class InterfaceAbstractCombination implements SubInterface{
public static void main(String[] args) {
SubInterface sub = new InterfaceAbstractCombination();
sub.doStuff();
}
}
【问题讨论】:
-
this指的是InterfaceAbstractCombination类的实例,而不是接口本身。
标签: java object inheritance interface