Ich habe folgende Bedingung, die Java-Annotation mit einem bestimmten Feldwert benötigt, um genau einmal in jedem Feld der Klasse zu erscheinen. Ist es mit Java 8 möglich?Java-Annotation - Kardinalität (Vorkommen) der Annotation mit demselben Feldelementwert einschränken
Meine Anmerkung
@Retention(RetentionPolicy.RUNTIME)
@Target(ElementType.FIELD) //can use with fields only.
public @interface TestAnnotation{
public String id();
}
die Klasse der Anmerkung unter Verwendung ist wie
@TestAnnotation(id="test")
private String testString;
@TestAnnotation(id="test1")
private String test1String;
@TestAnnotation(id="test2")
private String test2String;
Alles, was ich, dass mit dem Programmierer will, wie etwas verhindern
@TestAnnotation(id="test2")
private String test2String;
@TestAnnotation(id="test2")
private String test3String;
dh die gleiche Anmerkung mit spezifische ID@TestAnnotation(id="test2")
kann nicht zweimal für Felder verwendet werden. Zumindest die id="..."
sollte innerhalb der @TestAnnotaion
angelegten Felder innerhalb einer Klasse eindeutig sein.
Ok, wahrscheinlich kann ich dies mit Java Annotation Processor erreichen, würde es gepostet. – gyan