包:
org.springframework.util.ReflectionUtils
ReflectionUtils.findField(clazz, fieldName)
public class ReflectionTest {
public static void main(String[] args) {
B b = new B("XiaoMing", 11);
Field field = ReflectionUtils.findField(b.getClass(), "name");
System.out.println(field.getName());
}
}
class A {
private String name;
public A(String name) {
this.name = name;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
}
class B extends A{
private Integer age;
public B(String name, Integer age) {
super(name);
this.age = age;
}
public Integer getAge() {
return age;
}
public void setAge(Integer age) {
this.age = age;
}
}
输出:name
可以参考:
https://stackoverflow.com/questions/10580866/how-to-get-java-reflect-to-spot-fields-in-the-super-class-not-just-the-actual-c