哪个更好?
@SuppressWarnings("unchecked")
@SuppressWarnings(AnnotationConstants.UNCHECKED)
AnnotationConstants
是典型的常数类......
public final class AnnotationConstants {
private AnnotationConstants() { }
public static final String UNCHECKED = "unchecked";
...
}
我知道有很多一般论证支持和反对常量类 - 而这正是我不感兴趣的。我想知道一个常量类是否具体注释是一个好主意或坏主意。
答案 0 :(得分:6)
对于这个特定的示例,我坚持使用文字。毕竟,你试图压制警告 - 如果使用错误的文字,警告将不会被抑制,这会引起你对问题的注意。
答案 1 :(得分:3)
我想说一下这两点。
在Spring中,你可以说像@Scope(Scopes.SESSION)或@Scope(Scopes.REQUEST)这样的东西,它会在注释中附加一种特定的行为,所以我会说总是使用常量类,这有利于可追溯性。
如果你只是在抨击警告,那么你很可能想要真正追踪这一点,所以只需要使用文字。
答案 2 :(得分:2)
我同意Holsam for SuppressWarnings - 使用字符串
如果您正在编写自己的注释,我建议尽可能使用enum枚举可以表示为一组常量的内容
答案 3 :(得分:0)
对于@SuppressWarning
等喜欢,我不这么认为。我更喜欢直接编写常量,并让编译器检查它们是否可能。 Eclipse做得很好。