反射获取属性字段及属性值

上篇文章我们可以通过自己的类加载器加载指定类了,在获取指定类后我们需要拿到类属性名称及类属性的值。

获取属性字段:

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;
}

这样我们可以通过反射方法获取指定类中属性及属性值了。

猜你喜欢

转载自my.oschina.net/u/1000241/blog/1815519