上篇文章我们可以通过自己的类加载器加载指定类了,在获取指定类后我们需要拿到类属性名称及类属性的值。
获取属性字段:
public static List<Field> getFields(String classPath){
List<Field> fields = new ArrayList<>();
try{
Class clazz = Class.forName(classPath);
fileds.addAll(Arrays.asList(clazz.getDeclaredFields()));
}catch(ClassNotFoundException e){
e.printStaTrace();
}
return fields;
}
获取属性值:
public static Field[] getAllFieldValue(Object object){
Filed[] fields = object.getClass().getDeclaredFields();
return fields;
}
public static Filed getFieldValue(Object object, String name){
Field filed = object.getClass().getDeclaredField(name);
// field.setAccessible(true);
// String k = filed.getName();
// Class<?> cl = field.getType();
// cl.getName();
// Object v = field.get(object);
return field;
}
这样我们可以通过反射方法获取指定类中属性及属性值了。