アノテーションとそのパラメーターはコンパイル時に解決されるため、これはJavaでは不可能かもしれないと思います。私は次のようなインターフェースを持っています、
public interface FieldValues {
String[] FIELD1 = new String[]{"value1", "value2"};
}
そして別のクラスとして、
@SomeAnnotation(locations = {"value1", "value2"})
public class MyClass {
....
}
多くのクラスを注釈でマークし、代わりに使用したいすべての注釈で文字列を指定することを回避できるかどうか知りたい
@SomeAnnotation(locations = FieldValues.FIELD1)
public class MyClass {
....
}
しかし、これは注釈値が配列初期化子である必要があるなどのコンパイルエラーを発生させます。文字列定数またはString []定数を使用して注釈に値を提供する方法を誰かが知っていますか?