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

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

获取属性字段:

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

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

原文发布于微信公众号 - 服务端技术杂谈(ITIBB2014)

原文发表时间:2018-05-26

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏ImportSource

如何更好的定义枚举

枚举虽然是一个比较基础的东西。但如果你能在具体的开发中,更优雅的定义枚举的话会让你的代码看起来清新脱俗,本文将介绍枚举的各种用法,特别后面的通过构造函数传参以后...

34490
来自专栏coding for love

JS入门难点解析10-创建对象

(注1:如果有问题欢迎留言探讨,一起学习!转载请注明出处,喜欢可以点个赞哦!) (注2:更多内容请查看我的目录。)

13630
来自专栏androidBlog

Java 反射机制详解

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/gdutxiaoxu/article/details/...

9410
来自专栏王磊的博客

JavaScript中Object.keys、Object.getOwnPropertyNames区别

定义 Object.keys 定义:返回一个对象可枚举属性的字符串数组; Object.getOwnPropertyNames 定义:返回一个对象可枚举、不可枚...

390110
来自专栏Micro_awake web

JavaScript中创建对象的几种模式

11000
来自专栏博岩Java大讲堂

Java集合--Queue(Java中实现1)

41940
来自专栏天天

js面向对象思想精要

10910
来自专栏nummy

ECMAScript5 Object的新属性方法

虽然说现在并不是所有的浏览器都已经支持ECMAScript5的新特性,但相比于ECMAScript4而言ECMAScript5被广大浏览器厂商广泛接受,目前主流...

11940
来自专栏coding

python生成器讲解1什么是生成器将列表生成式的[]改成()用 yield 创建生成器yield的执行流程

如果要创建的是一个1000万个元素的列表呢?不可能使用以上的方式,即使你的电脑性能强劲,内存足够用,也不是这么用来浪费的。好比,你不可能用一个大桶来装一茶杯的水...

14230
来自专栏JavaEdge

深入分析Java的enum

364110

扫码关注云+社区

领取腾讯云代金券