package com.whbs.bean;  public class UserBean {  private Integer id;  private int age;  private String name;  private String address;  public UserBean(){  System.out.println("实例化");  }  public Integer getId() {  return id;  }  public void setId(Integer id) {  this.id = id;  }  public int getAge() {  return age;  }  public void setAge(int age) {  this.age = age;  }  public String getName() {  return name;  }  public void setName(String name) {  this.name = name;  }  public String getAddress() {  return address;  }  public void setAddress(String address) {  this.address = address;  }  }  2 > 反射测试  package com.whbs.test;  import java.lang.reflect.Field;
import java.lang.reflect.Method;  import com.whbs.bean.UserBean;  public class Test1 {  public static void main(String[] args) throws Exception {  /* * 实列化类 方法1 */  //String classPath = "com.whbs.bean.UserBean";  //Class cla = Test1.class.getClassLoader().loadClass(classPath);  //Object ob = cla.newInstance();  /* * 实列化类 方法2 */  UserBean bean = new UserBean();  bean.setId(100);  bean.setAddress("武汉");  //得到类对象  Class userCla = (Class) bean.getClass();  /* * 得到类中的所有属性集合 */  Field[] fs = userCla.getDeclaredFields();  for(int i = 0 ; i < fs.length; i++){  Field f = fs[i];  f.setAccessible(true); //设置些属性是可以访问的  Object val = f.get(bean);//得到此属性的值
        System.out.println("name:"+f.getName()+"\t value = "+val);  String type = f.getType().toString();//得到此属性的类型  if (type.endsWith("String")) {  System.out.println(f.getType()+"\t是String");  f.set(bean,"12") ;        //给属性设值  }else if(type.endsWith("int") || type.endsWith("Integer")){  System.out.println(f.getType()+"\t是int");  f.set(bean,12) ;       //给属性设值  }else{  System.out.println(f.getType()+"\t");  }  }  /* * 得到类中的方法 */  Method[] methods = userCla.getMethods();  for(int i = 0; i < methods.length; i++){  Method method = methods[i];  if(method.getName().startsWith("get")){  System.out.print("methodName:"+method.getName()+"\t");  System.out.println("value:"+method.invoke(bean));//得到get 方法的值
           }  }  }  }  

转载于:https://www.cnblogs.com/yaomajor/p/8157657.html

Java反射得到属性的值和设置属性的值相关推荐

  1. 【java】java反射机制,动态获取对象的属性和对应的参数值,并属性按照字典序排序,Field.setAccessible()方法的说明【可用于微信支付 签名生成】...

    方法1:通过get()方法获取属性值 package com.sxd.test.controller;public class FirstCa{private Integer num;private ...

  2. Java中怎样使用反射根据属性名获取和设置属性的值

    场景 在某管理系统中需要对一月中的每天进行设置某个状态 对应的实体类的属性为 分别为d1 d2 一直到第31号.前端传递到后台的是d1 d2 d3等实体类对应的属性和要设置的状态的字段. 怎样将这些属 ...

  3. 用反射写的取属性值和设置属性值得方法

    1 package com.lovo.util; 2 3 import java.lang.reflect.Constructor; 4 import java.lang.reflect.Field; ...

  4. java 获取属性值和设置属性值

    /*** 获取属性值* @param obj* @param property* @return*/public static Object getObjProVal(Object obj, Stri ...

  5. jquery 属性选择android,select设置text的值选中(兼容ios和Android)基于jquery

    前一段时间改了一个bug,是因为select引起的.当时我没有仔细看,只是把bug改完了就完事了,今天来总结一下. 首先说option中我们通常会设置value的属性的,还有就是text值的,请参见下 ...

  6. 根据属性名获取、设置属性值

    1.根据属性名获取属性值 可以通过JDK自带的反射下的getClass下的getDeclaredField并传递一个属性名字来获取该属性 属性名:fileName,对象:Object object: ...

  7. DOM—操作元素(获取属性值、设置属性值、 移除属性)

    1. 自定义属性的操作 1.1 获取属性值 element . 属性     获取属性值:(元素本身自带的属性) element . getAttribute( ' 属性 ' ):(主要获取自定义的属 ...

  8. JavaScript原生态获取DOM对象,获取属性值以及设置属性值

    一.获取DOM对象(标签,元素,节点)的三种方法 1.document.getElementById();   根据元素的id获取当前的标签 例如 <p id="demo"& ...

  9. mysql 默认值 now_mysql设置datetime默认值为now

    mysql设置datetime默认值为now http://blog.csdn.net/scogeek/article/details/50378480 在mysql中timestamp数据类型是一个 ...

  10. 前端radio单选框默认选中_「radio选中」单选框radio总结(获取值、设置默认选中值、样式) - seo实验室...

    radio选中 单选框 radio 是 否 1.获取值 $("input[name='killOrder']:checked").val(); $('input:radio:che ...

最新文章

  1. 【Spring】事务控制API
  2. 只讲关键点之兼容100+种关键点检测数据增强方法
  3. TP查询搜索函数的find select get value
  4. MyBatis 源码解读-environmentsElement()
  5. ajax put请求_前端基础面试:手写一个ajax,说说XMLHttpRequest 都有哪些属性?
  6. excel支持python吗_没有 Python,微软宣布 Excel 新增 JavaScript 支持
  7. python读取matlab文件_python写文件vs matlab写文件,由另一个s读取
  8. python中for循环-python中关于for循环的碎碎念
  9. 中文信息处理——使用结巴分词系统
  10. 修改系统时间,TFS会无法登陆
  11. windows 7系统的无损分区软件
  12. 简易支付系统的架构设计
  13. XTU OJ 1396
  14. —— GPS测量原理及应用复习-7 ——
  15. 并发类编程—CountDownLatch(同步器)
  16. android内核编译 me525,今天给ME525+刷了Android 4.0系统,很流畅!
  17. Web安全攻防世界05 easyphp(江苏工匠杯)
  18. 网狐精华版后台修改记录
  19. 当英文遇上汉语 就知道汉语有多强大了
  20. Stata: 交叉项\交乘项该这么分析!

热门文章

  1. C++11中default的使用
  2. 在c语言中,函数中的自动变量可以赋初值,每调用一次,赋一次初值,计算机二级考试 程序设计基础试题及答案三...
  3. js 点击侧边栏展示内容_【DEMO】JS实现侧边栏信息展示效果
  4. db2 linux 数据导出_linux db2 导出数据库
  5. php的反射作用是什么意思,php反射的作用是什么
  6. 怎么看懂c语言程序,求讲解一下这个程序,我看了1个小时都没有看懂,
  7. 简单有趣的matlab小程序_超实用有趣的五个小程序推荐
  8. 【HTML】兴唐二十八节课之常用标签(不定期更新)
  9. JavaScript脚本文件学习总结
  10. 1小时学会:最简单的iOS直播推流(十)librtmp使用介绍