最佳答案
Java 中的接口类似于类,但是 接口可以包括 只有抽象的方法和
final
字段 (常数)。
最近,我看到一个问题,看起来像这样
interface AnInterface {
public default void myMethod() {
System.out.println("D");
}
}
根据接口定义,允许使用 只有抽象的方法。为什么它允许我编译上面的代码?default
关键字是什么?
另一方面,当我试图写下面的代码,然后它说 modifier default not allowed here
default class MyClass{
}
而不是
class MyClass {
}
谁能告诉我 default
关键字的用途?只允许在接口内部使用吗?它与 default
(无访问修饰符)有什么不同?