tôi tạo chú thích của tôiLấy danh sách các lĩnh vực với chú thích, bằng cách sử dụng phản ánh
public @interface MyAnnotation {
}
tôi đặt nó trên các lĩnh vực trong đối tượng thử nghiệm của tôi
public class TestObject {
@MyAnnotation
final private Outlook outlook;
@MyAnnotation
final private Temperature temperature;
...
}
Bây giờ tôi muốn để có được danh sách tất cả các lĩnh vực với MyAnnotation
.
for(Field field : TestObject.class.getDeclaredFields())
{
if (field.isAnnotationPresent(MyAnnotation.class))
{
//do action
}
}
Nhưng có vẻ như khối của tôi làm hành động không bao giờ được thực hiện, và các lĩnh vực không có chú thích như đoạn mã sau trả về 0.
TestObject.class.getDeclaredField("outlook").getAnnotations().length;
Có ai có thể giúp tôi và cho tôi biết những gì tôi đang làm sai rồi?
1) Để được trợ giúp tốt hơn sớm hơn, gửi một [SSCCE] (http://sscce.org/). 2) Vui lòng thêm một chữ cái hoa ở đầu câu. Cũng sử dụng vốn cho từ I & tên thích hợp như Java, và các từ viết tắt và từ viết tắt như JEE hoặc WAR. Điều này giúp mọi người hiểu và giúp đỡ dễ dàng hơn. –
có thể trùng lặp của [Cách nhận chú thích của biến thành viên?] (Http://stackoverflow.com/questions/4453159/how-to-get-annotations-of-a-member-variable) – fglez