Получить список полей с аннотацией, используя отражение
Я создаю свою аннотацию
public @interface MyAnnotation {
}
Я положил его на поля в моем тестовом объекте
public class TestObject {
@MyAnnotation
final private Outlook outlook;
@MyAnnotation
final private Temperature temperature;
...
}
Теперь я хочу получить список всех полей сMyAnnotation
.
for(Field field : TestObject.class.getDeclaredFields())
{
if (field.isAnnotationPresent(MyAnnotation.class))
{
//do action
}
}
Но похоже, что мой блок do никогда не выполняется, и поля не имеют аннотаций, так как следующий код возвращает 0.
TestObject.class.getDeclaredField("outlook").getAnnotations().length;
Кто-нибудь может мне помочь и сказать, что я делаю не так?