`
hongwei3344661
  • 浏览: 29275 次
  • 性别: Icon_minigender_1
文章分类
社区版块
存档分类
最新评论

java 反射调用get方法和set方法

 
阅读更多

import java.beans.PropertyDescriptor;
import java.lang.reflect.Field;
import java.lang.reflect.Method;

public class ReflectTest {

 
 public static void main(String[] args) throws Exception {
  Class clazz = Class.forName("TaskProvidePropsList");//这里的类名是全名。。有包的话要加上包名
  Object obj = clazz.newInstance();
  Field[] fields = clazz.getDeclaredFields();
  //写数据
  for(Field f : fields) {
   PropertyDescriptor pd = new PropertyDescriptor(f.getName(), clazz);
   Method wM = pd.getWriteMethod();//获得写方法
   wM.invoke(obj, 2);//因为知道是int类型的属性,所以传个int过去就是了。。实际情况中需要判断下他的参数类型
  }
  //读数据
  for(Field f : fields) {
   PropertyDescriptor pd = new PropertyDescriptor(f.getName(), clazz);
   Method rM = pd.getReadMethod();//获得读方法
   Integer num = (Integer) rM.invoke(obj);//因为知道是int类型的属性,所以转换成integer就是了。。也可以不转换直接打印
   System.out.println(num);
  }
 }

}

分享到:
评论

相关推荐

    Java 反射创建get set方法及反射方法的调用

    Java 反射创建get set方法及反射方法的调用

    Java通过PropertyDescriptor反射调用set和get方法

    主要为大家详细介绍了Java通过PropertyDescriptor反射调用set和get方法,具有一定的参考价值,感兴趣的小伙伴们可以参考一下

    编写Student类,类中包含学生姓名,学号等私有数据成员。使用JAVA反射机制修改一个学生对象的私有数据成员

    编写Student类,类中包含学生姓名,学号等私有数据成员。 使用JAVA反射机制修改一个学生对象的私有数据成员(不允许调用setters)

    Java 反射机制 - v1.0.pdf

    Java 反射机制可以让我们在编译期(Compile Time)之外的运行期(Runtime)检查类,接口,变量以及方法的信 息。反射还可以让我们在运行期实例化对象,调用方法,通过调用 get/set 方法获取变量的值。

    java框架知识点汇总(反射,XML,设计模式,Redis缓存数据库)

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

    Java开发技术大全(500个源代码).

    invokeMethod.java 利用反射机制调用成员方法 listConstructors.java 利用反射机制获取构造器列表 listFields.java 利用反射机制获取成员属性列表 listMethods.java 利用反射机制获取成员方法列表 loadClass....

    day021-反射和注解笔记和代码.rar

    基本的 Java 类型(boolean、byte、char、short、int、long、float 和 double)和关键字 void 也表示为 Class 对象; 注意 : 1、 Class类 和它的实例的产生: Class的对象是已经存在的类型, 所以不...

    java里面的lang包源码-reflectasm:高性能Java反射

    生成访问类以设置/获取字段、调用方法或创建新实例。 访问类使用字节码而不是 Java 的反射,因此速度要快得多。 它还可以通过字节码访问原始字段以避免装箱。 表现 这些基准测试的源代码包含在项目中。 以上图表是在...

    Java 高级特性.doc

    通配符定义的变量主要用作引用,调用与参数化无关的方法,如果要调用与参数化相关的方法,那么必须在使用?通配符引用之前调用,否则就与java 5提供泛型的目的背道而驰了。 b..向下限定通配符: 正确:Vector...

    Java面试宝典2020修订版V1.0.1.doc

    14、jquery中的$.get和$.post请求区别? 27 15、jquery中如何操作样式的? 28 16、如何设置和获取HTML和文本的值? 28 17、Jquery能做些什么? 28 18、在ajax中data主要有哪几种? 28 19、jQuery中ajax由几部分组成...

    Android便携式热点的开启状态检测和SSID的获取方法

    这个方法被隐藏起来了,目前我是通过反射调用的。 /** * Gets the Wi-Fi enabled state. * @return One of {@link #WIFI_AP_STATE_DISABLED}, * {@link #WIFI_AP_STATE_DISABLING}, {@link #WIFI_AP_STATE_E

    java面试题

    48. get和post的区别? 22 49. JDK,JRE,JVM的区别? 22 50. Java中常见类,方法,接口 23 51. 多线程 23 51.1. 线程的基本概念 23 51.2. Java中的线程有四种状态 23 51.3. 多线程有几种实现方法,都是什么?同步有几种...

    DWR.xml配置文件说明书(含源码)

    这样就可以限定DWR不能调用Fred对象的getProperty1()和getProperty2()方法,通常这被成为拒绝访问方式,当然你也可以采用下面的方式配置可以访问的方法(授权访问方式) , property2"/> 较好的安全控制大部分都是采用...

    将 Flex 集成到 Java EE 应用程序的最佳实践(完整源代码)

    现在,我们希望用 Flex 替换掉原有的 Servlet 和 JSP 页面,就需要让 Flex 和 Java EE 后端通信。Flex 支持多种远程调用方式,包括 HTTP,Web Services 和 AMF。不过,针对 Java EE 开发的服务器端应用,可以通过...

    精通 Hibernate:Java 对象持久化技术详解(第2版).part2

     8.4.2 Session的load()和get()方法  8.4.3 Session的update()方法  8.4.4 Session的saveOrUpdate()方法  8.4.5 Session的merge()方法  8.4.6 Session的delete()方法  8.4.7 Session的replicate()方法  8.5 ...

    +Flex+集成到+Java+EE+应用程序的最佳实践(完整源代码)

    现在,我们希望用 Flex 替换掉原有的 Servlet 和 JSP 页面,就需要让 Flex 和 Java EE 后端通信。Flex 支持多种远程调用方式,包括 HTTP,Web Services 和 AMF。不过,针对 Java EE 开发的服务器端应用,可以通过...

    JDBC+映射文件(M.xml)+反射+对象来完成一个伪ORM框架

    反射回去到一个类,类名,类的所有属性...还记得刚开始学java的时候,对于java里的私有属性,想要操作它,得需要通过创建对象调用它set或get方法,才能操作这些私有属性。那么对于使用反射,我们同样也能操作这些私有属性。

    swindler:一个基于反射 API 和 javassist 的简约 Java 模拟库

    只需快速作弊和调用 Math.random() 就完全可以预测了: Swindler . with( " java.lang.Math$RandomNumberGeneratorHolder " ) .get( " randomNumberGenerator " ) .set( new Random () { @Override public ...

    Android集成主流优秀第三方组件框架

    读取本地资源工具类(ToolResource.java),反射本地资源文件API,避免依赖R文件,方便 jar形式发布 Android单位转换工具类(ToolUnit.java),sp/dp/px互转 自定义Toast工具类(ToolToast.java),自定义背景色、字体...

Global site tag (gtag.js) - Google Analytics