来自" @ SuppressWarnings"的奇怪结果

时间:2016-07-24 18:05:17

标签: java annotations suppress-warnings

Eclipse警告我局部变量randInt可能没有被初始化(它是)。所以我添加了第一行:

@SuppressWarnings("all")
return randInt;

警告消失了,但我在第一行收到两个新错误: 语法错误:insert" enum Identifier"完成EnumHeaderName,和 语法错误:insert" EnumBody"完成BlockStatement

究竟是什么?很难找到有关@SuppressWarnings的信息。除了使用"所有"?是否有更精确的方法来消除此特定警告?

最小,完整,可验证的例子:

public class SuppressTest {
    public int cut() { 
        int randInt = 0; 
        @SuppressWarnings("all") 
        return randInt;
    }
}

1 个答案:

答案 0 :(得分:1)

您无法在return语句中插入@SuppresWarnings。在java 8中,您只能注释类,方法/构造函数,字段,参数和(java 8中的新增内容)局部变量。

因此,在您的情况下,java无法解析您所写的内容。在方法级别移动@SuppressWarnings