我有两种方法的注释
public class Question {
@AnnotationA(value = { @AnnotationB(message = "One"), @AnnotationB(message = "Two") })
public int methodOne() {
return 1;
}
@AnnotationA(value = { @AnnotationB(message = "One"), @AnnotationB(message = "Two") })
public int methodTwo() {
return 2;
}
}
我希望能够写
public class Question {
@AnnotationA(value = annoArray)
public int methodOne() {
return 1;
}
@AnnotationA(value = annoArray)
public int methodTwo() {
return 2;
}
public AnnotationB[] annoArray = { @AnnotationB(message = "One"), @AnnotationB(message = "Two") }
}
但IntelliJ告知我Annotations are not allowed here
位置annoArray
。
有不同的方法吗?
答案 0 :(得分:1)
这是不可能的,因为注释必须是编译时常量。但是你至少有两种可能性: