我对使用Java 8还是很陌生,以前从未真正使用过注释。当我尝试使用eclipse oxygen,java 8并为注解@FunctionalInterface编写用于功能接口的简单程序时,我看到红色x(错误)表示FunctionalInterface不是注解类型。
请帮助解决此问题。我知道提供注释不是强制性的,没有注释,我的程序也可以正常运行,但是我仍然想使用它。
答案 0 :(得分:2)
希望您尚未将界面写为
package com.practice;
@FunctionalInterface
public interface FunctionalInterface {
void method1();
}
,即注释和接口的名称相同。 @ greg-449在您的评论部分中提到的是同一件事。
答案 1 :(得分:1)
请确保您的Installed是否指向eclipse中的jre 1.8 验证您可以转到“窗口”>“首选项”>“ java>”已安装的Jre 如果没有,请更新
答案 2 :(得分:0)
您应该安装Java 8,而Eclipse应该使用Java 8,但是,对于Java 8,我也遇到了同样的问题。我手动导入后消失了:
import java.lang.FunctionalInterface;
然后我决定只做一个干净的构建,即使“没有” import语句,问题也消失了。
答案 3 :(得分:0)
首先清理您的项目,即使那不能解决您的问题,也请尝试关闭该项目,然后再次打开该项目。
答案 4 :(得分:0)
面对与接口名称相同的问题是FunctionalInterface。参考前面的评论,更新了接口名称,并且注释对我有用。 @FunctionalInterface不需要其他导入。