反射获取对象中所有属性值:

public class Person {
private String name;
private int age;
// ...
}

Person person = new Person();
person.setName("luo");
person.setAge(25);

try {
Class clazz = person.getClass();
Field[] fields = clazz.getDeclaredFields();
for (Field field : fields) {
field.setAccessible(true);
System.out.println(field.getType() + " | " + field.getName() + " = " + field.get(person));
}

// 通过反射获取某一个方法
Method method = clazz.getMethod("setName", String.class);
method.invoke(person, "bei");

} catch (Exception e) {
e.printStackTrace();
}