繁体   English   中英

接口中的默认方法使用命令提示符运行但不在eclipse中运行

[英]default method in interface runs with command prompt but not in eclipse

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中更改项目的构建路径和编译器级别。

更重要的是:

安装Java™8支持。

您似乎已经安装了Java 8 JDK,但您的eclipse仍然不支持Java 8. Eclipse Luna支持Java 8.更改编译器选项右键单击项目>属性> Java编译器>选中“启用项目特定设置” >然后选择编译器合规性级别。 在此输入图像描述

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM