java - 界面中的默认方法在命令提示符下运行,但在 eclipse 中不运行

标签 java interface java-8 default-method

interface G {
    default void print() {
        System.out.println("G");
    }
}
class M {
    public void print() {
        System.out.println("M");
    }
}
class GImpl extends M implements G {}
public class Wierd {
    public static void main(String[] args) {
        G g=new GImpl();
        g.print();
    }
}

我试图在界面中使用默认方法,但是当使用 eclipse 编译时,我在第 2 行收到错误 - 说删除默认值,但我使用命令提示符编译和运行它运行正常,这可能是什么原因?

最佳答案

  • 您的 eclipse 仍未使用 Java8 版本,请检查它是否小于 8。
  • 使用 System.out.println(System.getProperty("java.runtime.version")); 检查。
  • 您可能还需要在 Eclipse 中更改项目的构建路径和编译器级别。

还有更重要的:

Installing Java™ 8 support .

关于java - 界面中的默认方法在命令提示符下运行,但在 eclipse 中不运行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24574293/

相关文章:

UTC 0日期部分中的java sql时间戳出错

java - 为什么我得到 java.lang.NoSuchMethodError : createImageUsingNativeSize error in 1. 8.0_45

java - 在windows中监听 "folder opening"事件(java)

java - 在从 JTextArea 获取文本的文档中保存文件时如何修复新行

java - 如何获取 BigInteger Value 中的所有数字总和?

C#如何使用多个接口(interface)实现

java - 如何将 Camunda ExternalTask​​Client 绑定(bind)到本地端口?

java - 使用接口(interface)从异步任务 onpostexecute 获取数据

java - 调用通用接口(interface)方法不起作用

javafx - 如何为 JavaFX 编写 KeyListener