Sto pensando che questo potrebbe non essere possibile in Java a causa di annotazione ed i suoi parametri vengono risolte al momento della compilazione. Ho un'interfaccia come segue,Come per fornire valore ai un'annotazione da un java Constant
public interface FieldValues {
String[] FIELD1 = new String[]{"value1", "value2"};
}
e un'altra classe come,
@SomeAnnotation(locations = {"value1", "value2"})
public class MyClass {
....
}
ho marchio molte classi con l'annotazione e vorrei sapere se posso evitare di specificare le stringhe in ogni annotazione I sarebbe invece preferisce utilizzare
@SomeAnnotation(locations = FieldValues.FIELD1)
public class MyClass {
....
}
Tuttavia questo dà errori di compilazione come valore annotazioni devono essere un array di inizializzazione ecc qualcuno sa come posso usare una stringa costante o String [] costante per fornire valore a un'annotazione?
Anche Enums! :) :) – TacB0sS
Penso che l'URL di riferimento sia morto. La specifica Java sulle costanti è a cosa ti riferivi? Ad esempio, http://docs.oracle.com/javase/specs/jls/se7/html/jls-15.html#jls-15.28 –
@ TacB0sS, le enumerazioni non sono espressioni costanti. – jaco0646