Tôi nghĩ điều này có thể không khả thi trong Java vì chú thích và các tham số của nó được giải quyết tại thời điểm biên dịch. Tôi có một giao diện như sau,
public interface FieldValues {
String[] FIELD1 = new String[]{"value1", "value2"};
}
và một lớp khác như,
@SomeAnnotation(locations = {"value1", "value2"})
public class MyClass {
....
}
Tôi đánh dấu nhiều lớp bằng chú thích và tôi muốn biết liệu tôi có thể tránh chỉ định các chuỗi trong mỗi chú thích mà tôi muốn sử dụng không
@SomeAnnotation(locations = FieldValues.FIELD1)
public class MyClass {
....
}
Tuy nhiên, điều này mang lại các lỗi biên dịch như giá trị chú thích nên là một trình khởi tạo mảng, v.v. Có ai biết làm thế nào tôi có thể sử dụng hằng Chuỗi hay hằng [] để cung cấp giá trị cho chú thích không?