我认为这应该指向正确的方向:

import java.beans.*

for (PropertyDescriptor pd : Introspector.getBeanInfo(Foo.class).getPropertyDescriptors()) {

if (pd.getReadMethod() != null && !"class".equals(pd.getName()))

System.out.println(pd.getReadMethod().invoke(foo));

}

请注意,您可以自己创建BeanInfo或PropertyDescriptor实例,即不使用Introspector。但是,Introspector在内部执行一些缓存,这通常是一个Good Thing(tm)。如果你快乐没有缓存,你甚至可以去

// TODO check for non-existing readMethod

Object value = new PropertyDescriptor("name", Person.class).getReadMethod().invoke(person);

但是,有很多库来扩展和简化java.beans API。 Commons BeanUtils是一个众所周知的例子。在那里,你只要做:

Object value = PropertyUtils.getProperty(person, "name");

BeanUtils自带了其他方便的东西。即即时值转换(对象到字符串,字符串到对象),以简化来自用户输入的属性设置。

java 反射 getter,java – 通过反射调用getter的最佳方式相关推荐

  1. Java、Android基础之—反射

    前言 写这篇文章原因之一,是因为之后会对一些Android第三方框架进行分析.虽不能达到完全清晰,但大体的涉及知识需明白. 反射概述 反射是框架设计的灵魂.(使用的前提条件:必须先得到代表的字节码的C ...

  2. java反射随意值_Java反射总结

    能够分析类能力的程序称为反射.对于给定的Java类名,可以通过反射获取类的信息.将类的各成分映射出相应的Java类. Class类 在程序运行期间,Java运行时系统始终对所有的对象维护一个被称为运行 ...

  3. 【Sofice小司笔记】1 Java,包含java基础知识,集合,面向对象,反射,泛型等

    JavaSE:标准版(桌面程序,控制台) JavaME:嵌入式开发(手机) JavaEE:E企业级开发(web,服务器) JDK(Java Development Kit):整个java开发工具 JR ...

  4. 头歌Educoder——Java高级特性 - Java反射

    文章目录 第1关:了解 Class 对象 任务描述 相关知识 Class 对象 三种获取Class类型的实例的方法 三种方法获取的 Class 对象之间的区别 编程要求 测试说明 代码样例 Refle ...

  5. Java中的Json序列化,不容忽视的getter

    文章目录 前言 一.Java中的Json序列化,不容忽视的getter 二.问题重现 1.核心代码 2.问题分析 2.1常用 JSON序列化库 的序列化原理: 总结 前言 提示:这里可以添加本文要记录 ...

  6. Java学习总结:39(反射机制)

    反射机制 JAVA中反射是动态获取信息以及动态调用对象方法的一种反射机制. Java反射就是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法:对于任意一个对象,都能够调用它的任意方法和属 ...

  7. java class 生成对象_Java反射机制(创建Class对象的三种方式)

    1:SUN提供的反射机制的类: java.lang.Class java.lang.reflect.Constructor java.lang.reflect.Field java.lang.refl ...

  8. java反射设置access_Java反射之java.lang.reflect.Field

    前面一章 讲了怎么通过Class获取到成员(成员变量.成员方法.构造器),本篇文章开始详细讲解成员变量(java.lang.reflect.Field)的详细用法. 获取field的类型 有两种方式可 ...

  9. java的准动态(反射)

    java 的反射机制 相关系列 该懂的反射小操作 文章目录 java 的反射机制 相关系列 前言 一.反射机制 二.反射机制的常见操作 java.lang.Class 类 つづく 前言 动态语言 在程 ...

  10. 细说反射,Java 和 Android 开发者必须跨越的坎

    写下这个题目的时候,我压力比较大,怕的是费力不讨好.因为反射这一块,对于大多数人员而言太熟悉了,稍微不注意就容易把方向写偏,把知识点写漏.但是,我已经写了注解和动态代理这两个知识点的博客,阅读量还可以 ...

最新文章

  1. Windows 10 下的OpenVINO Pycharm+Anaconda开发环境配置
  2. 软件:分享9款实用电脑软件,值得看一看
  3. 通俗易懂的堆排序C++实现
  4. linux系统与命令
  5. yolov3前向传播(二)-- yolov3相关模块的解析与实现(二)
  6. Atitit 研发团队建设----福利法案--非物质福利与物质福利法案
  7. CSDN 博客版块问题解决日志
  8. 永洪BI-报表生成URL
  9. 如何利用ICEPAK进行热仿真分析,简单易学
  10. matlab中数字分频器的,数字分频器原理及设计.pdf
  11. 鸿蒙充值卡是不是真的,鸿蒙成仙录红包版
  12. gg修改器怎么修改服务器数值,gg修改器怎么修改数值 | 手游网游页游攻略大全...
  13. stm32单片机里面的GPIO是什么意思?
  14. 纯JS实现懒加载+瀑布流布局
  15. 计算机word模块试题,计算机word考试试题1(附答案)
  16. 阿里云 - MaxCompute研究
  17. java hid 协议,USB HID协议问题
  18. appium自动化,appium元素定位
  19. 我只管向前奔跑,其他的交给时间
  20. python输入名字配对情侣网名_定制情侣网名输入名字

热门文章

  1. 干货|人人都是翻译项目的Master
  2. rop检查_糖尿病还要检查眼底,必须的!
  3. 数据可视化echarts介绍
  4. 深圳湾将现“小米魔方”!ennead为小米打造深圳国际总部;乐高集团扩大嘉兴工厂产能 | 美通社头条...
  5. 浅聊DAO图景和未来
  6. Lua脚本快速上手(附示例程序代码)
  7. 对 c\c++ char类型的理解
  8. Android使用RtmpDump进行RTMP推流介绍
  9. 安卓P 刘海屏的适配
  10. 20200215惠普(HP)星14(R5-3500U)在ubuntu20.04下启动通过dmesg打印的内核信息