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