A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© liudh1 中级黑马   /  2016-4-22 08:48  /  268 人查看  /  0 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

package com.itheima;
import java.lang.reflect.Field;
/**
* 2、package com.itheima;
import java.lang.reflect.Field;
/**
* 2、写一个方法,此方法可将obj对象中名为propertyName的属性的值设置为value.
*  public void setProperty(Object obj, String propertyName, Object value){}
*/
public class Test02 {

//可以通过反射对其属性值进行更改
public void setProperty(Object obj, String propertyName, Object value) throws Exception{
  //创建运行时对象
  Class<? extends Object> clazz =obj.getClass();
  //通过属性名字获取属性
  Field field = clazz.getDeclaredField(propertyName);
  //setAccessible(true)值为 true 则指示反射的对象在使用时应该取消 Java 语言访问检查。
  field.setAccessible(true);
  //对属性值进行更改
  field.set(obj, value);
}
}

.
*  public void setProperty(Object obj, String propertyName, Object value){}
*/
public class Test02 {

//可以通过反射对其属性值进行更改
public void setProperty(Object obj, String propertyName, Object value) throws Exception{
  //创建运行时对象
  Class<? extends Object> clazz =obj.getClass();
  //通过属性名字获取属性
  Field field = clazz.getDeclaredField(propertyName);
  //setAccessible(true)值为 true 则指示反射的对象在使用时应该取消 Java 语言访问检查。
  field.setAccessible(true);
  //对属性值进行更改
  field.set(obj, value);
}
}


0 个回复

您需要登录后才可以回帖 登录 | 加入黑马