Filed类封装了关于类成员变量的所有操作 ,java.lang.reflect.Field;
获取类成员变量的案例:
public static void main(String[] args) {
getVariables(new Student());
// getVariables(123);
}
/**
* java.lang.reflect.Field Filed类封装了关于类成员变量的所有操作 //
*/
public static void getVariables(Object obj) {
Class c1 = obj.getClass();
// 获取所有public的成员变量
Field[] fieldArr = c1.getFields();
// 获取该类所有的成员变量
Field[] fieldArr2 = c1.getDeclaredFields();
for (Field field : fieldArr2) {
// 获取成员变量类型的类类型
Class fieldType = field.getType();
// 获取成员变量类型名称
String typeName = field.getName();
// 获取成员变量名称
String fieldName = field.getName();
System.out.println(typeName + " " + fieldName);
}
}