Java Enum未使用的字段警告

时间:2013-08-09 12:10:39

标签: java eclipse enums warnings

我在这里做错了什么?

public enum Type {
    INFO("INFO"),
    WARN("WARN"),
    ERROR("ERROR"),
    FATAL("FATAL");

    private String value;

    private Type(String aValue) {
        value = aValue;
    }
};  

enter image description here

我收到有关未使用价值的警告......

所有我能想到的就是使用@SupressWarnings,但我是新手,所以我只是在这里查看是否我做错了什么?有什么想法吗?

5 个答案:

答案 0 :(得分:4)

它会显示警告,因为永远不会读取字段值。

要简单地跳过此警告,只需为该字段提供一个getter。

public String getValue() {
    return value;
}

答案 1 :(得分:1)

我知道为什么会让人感到困惑,但分配并不算作使用。在发生之前,实际上必须在表达式中使用该变量。在这种情况下,这意味着value将在类中用于执行某些计算,或者您编写一个getter。在任何一种情况下,变量现在都被“使用”。

答案 2 :(得分:0)

这意味着你正在,但从不读它。你需要它吗 ?如果没有,那么你可以删除它。

答案 3 :(得分:0)

你的意思是未读,不是未使用?虚拟机试图告诉你,你正在设置一个值,但没有对它做任何事情 - 通常是一个错误。绝对不要使用@SuppressWarnings。修复错误(使用值)或停止跟踪变量。

答案 4 :(得分:0)

IDE没有抱怨,它只是试图帮助您remove未使用和不必要的code

如果您在某处使用value,则会删除warning

由于您声明了private String value;而没有使用,所以它会通知您,以便您采取必要的步骤。