我有一个关于java反射的问题。我试图获取特定类的所有字段(包括公共字段和私有字段)。
public class Address extends BaseModel {
/**
*
*/
private static final long serialVersionUID = 1L;
private String streetAddress;
private String city;
private String state;
private String postalCode;
private String country;
// References............
private Candidate candidate;
private TrainingBatch trainingBatch;
private ContactInformation contactInformation;
// Getters And Setters
}
我正在尝试使用Java Reflection获取所有这些字段。但如果您观察我的POJO类,我正在使用其他类引用(如Candidate,TrainingBatch,ContactIformation)。下面是我使用Java Reflection访问字段的代码。
public class Reflection {
public static void main(String[] args) throws ClassNotFoundException {
String name = Address.class.getName();
System.out.println(name);
Class cls = Class.forName(name);
// Field[] fields = cls.getFields();
Field[] fields = cls.getDeclaredFields();
for (Field field : fields) {
if(cls.isAssignableFrom(field.getType())){
System.out.println(field.getName() + "\t" + field.getType());
}
}
}
}
所以这里当我执行这个时,我得到了我的POJO类中的所有字段。但我不想要引用的字段以及“serialVersionUID”字段。那么如何使用Java反射来避免这些字段。 Java Reflection中有什么办法吗?请帮帮我。
提前致谢...:)