是否可以弃用枚举常量?

Azo*_*qua 1 java enums deprecated

是否可以@Deprecated在枚举常量上使用注释?

Abd*_*hak 5

是的,在它们上添加@Deprecated注释(大写)。例如:

public enum Status {
OK,
ERROR,

@Deprecated
PROBLEM
}
Run Code Online (Sandbox Code Playgroud)

@Deprecated 是编译器读取的注释,用于将方法标记为编译器已弃用,并且如果使用该方法,将生成弃用编译时警告。

@deprecated 是一个 javadoc 标记,用于提供有关弃用的文档。您可以使用它来解释为什么该方法被弃用并建议替代方案。只有将此标签与 @Deprecated 注释结合使用才有意义。


ass*_*ias 5

如果你检查javadoc,你会看到声明:

@Target(value={CONSTRUCTOR,FIELD,LOCAL_VARIABLE,METHOD,PACKAGE,PARAMETER,TYPE})
Run Code Online (Sandbox Code Playgroud)

其中包括FIELD.如果你点击,FIELD你会看到它的javadoc:

字段声明(包括枚举常量)

所以答案是:是的它应该可以正常工作.

  • 谢谢,我学会了一种从java文档中检索信息的新方法. (2认同)