Abrufen einer Liste von Feldern mit Anmerkungen mithilfe von Reflektion
Ich erstelle meine Anmerkung
public @interface MyAnnotation {
}
Ich habe es auf Felder in meinem Testobjekt gelegt
public class TestObject {
@MyAnnotation
final private Outlook outlook;
@MyAnnotation
final private Temperature temperature;
...
}
Jetzt möchte ich eine Liste aller Felder mit bekommenMyAnnotation
.
for(Field field : TestObject.class.getDeclaredFields())
{
if (field.isAnnotationPresent(MyAnnotation.class))
{
//do action
}
}
Aber es scheint, als würde meine Aktion "Block do" niemals ausgeführt, und Felder haben keine Annotation, da der folgende Code 0 zurückgibt.
TestObject.class.getDeclaredField("outlook").getAnnotations().length;
Kann mir jemand helfen und mir sagen, was ich falsch mache?