在Java 8中,定义一个名为`MyInterface`的接口,其中包含一个常量`MAX_VALUE`,一个抽象方法`calculate()`,一个默认方法`log()`和一个静态方法`createInstance()`。以下关于`MyInterface`的描述,哪一项是正确的?

答案解析

选项A错误,接口中的常量默认就是 `public static final`,无需显式声明。选项B错误,接口中的抽象方法默认就是 `public abstract`,无需显式声明。选项C正确,接口中的常量和抽象方法的 `public static final` 和 `public abstract` 均为默认属性,可以省略不写。选项D错误,`log()` 是默认方法,不属于重写,所以不能使用 `@Override` 注解;`createInstance()` 可以通过接口名调用。需要注意的是,接口中的默认方法无需使用 `@Override` 注解,只有在子类覆盖该方法时才需要。
正确答案:C
随机推荐
开始刷题