写一个方法,此方法可将obj对象中名为propertyName的属性的值设置为value.
2014-08-27 00:39
1111 查看
/*
4、 写一个方法,此方法可将obj对象中名为propertyName的属性的值设置为value.
public void setProperty(Object obj, String propertyName, Object value){
}
思路:1.定义一个用来演示的类,再创建该类对象。
2.定义一个可以将propertyName的属性的值设置为value的方法。
3.把对象传入,获取对象的字节码文件。
4.通过反射,得到propertyName字段。再把该值改变传入的value值。
*/
public class Test4 {
public static class Demo{//用来演示的类。
private String str ="java您好";
}
public static void main(String[] args) throws Exception {
Demo d =new Demo();//创建一个用来演示的Demo对象。
setProperty(d,"str","我在测试");//将对象中str的值设置为字符串中的内容,也就实现了:将obj对象中名为propertyName的属性的值设置为value.
System.out.println(d.str);//输出更改后的值。
}
//定义一个可以将propertyName的属性的值设置为value的方法。
public static void setProperty(Object obj,String propertyName,Object value) throws Exception{
Class cls =obj.getClass();//获取obj字节码
Field field =cls.getDeclaredField(propertyName);//得到propertyName字段
field.setAccessible(true);//因为对象的属性是私有的,先把权限打开。(暴力反射)
field.set(obj, value);//将传入的obj对象中为propertyName的属性的值设置为value.
}
}
4、 写一个方法,此方法可将obj对象中名为propertyName的属性的值设置为value.
public void setProperty(Object obj, String propertyName, Object value){
}
思路:1.定义一个用来演示的类,再创建该类对象。
2.定义一个可以将propertyName的属性的值设置为value的方法。
3.把对象传入,获取对象的字节码文件。
4.通过反射,得到propertyName字段。再把该值改变传入的value值。
*/
public class Test4 {
public static class Demo{//用来演示的类。
private String str ="java您好";
}
public static void main(String[] args) throws Exception {
Demo d =new Demo();//创建一个用来演示的Demo对象。
setProperty(d,"str","我在测试");//将对象中str的值设置为字符串中的内容,也就实现了:将obj对象中名为propertyName的属性的值设置为value.
System.out.println(d.str);//输出更改后的值。
}
//定义一个可以将propertyName的属性的值设置为value的方法。
public static void setProperty(Object obj,String propertyName,Object value) throws Exception{
Class cls =obj.getClass();//获取obj字节码
Field field =cls.getDeclaredField(propertyName);//得到propertyName字段
field.setAccessible(true);//因为对象的属性是私有的,先把权限打开。(暴力反射)
field.set(obj, value);//将传入的obj对象中为propertyName的属性的值设置为value.
}
}
相关文章推荐
- 写一个方法实现吧obj对象里的propertyName的属性值设置为value
- 写一个方法进行各种属性的更新,而不要每个界面设置改变都改变一个属性。就是点击应用或确定按钮时调用这个更新属性的方法,遍历所有(控制对象属性的)界面控件的状态(值),进行属性修改和刷新。
- 定义Person类,Person类中含有两个属性name 和age ,使用compare方法比较两个对象是否为同一个对象。假定name 和age 都相同就似为同一个对象
- 工作总结 @Html 辅助方法 为 生成的 标签设置元素属性 htmlAttributes 一个对象,其中包含要为该元素设置的 HTML 特性。
- 反射示例3:写一个方法设置对象任意权限的属性的值
- jquery之操作元素属性和特性(设置特性值,attr(name,value),attr(attributes)方法的使用)
- C#反射新建类实例和调用类方法及属性帮助类 以及获取或设置对象属性中字段值帮助类
- C#反射实例——获取及设置对象属性,运行对象方法
- 利用反射设置对象的属性(Property)
- AS、Flex如何循环调用一个对象的属性、方法
- (转)逐步为对象集合构建一个通用的按指定属性排序的方法
- Property设置属性的7种方法
- Javascript 对象不支持此属性或方法,Object doesn’t support this property or method
- 编写一个文件,读取 src 下面day12包 下面的my.properties 文件,文件内容如下, className=day12.User 结合 IO、反射知识,完成 配置文件中对象的创建和方法调用。并编写方法,列举出 Student 类中所有的属性、
- Autopostback提示“该对象不支持此属性或方法”(Object doesn't support this property or method)
- 如何在PowerShell中得到一个对象的所有属性名和方法名呢?
- 解决方法:Submit 操作失败。为类型“BomExtend”上的集合属性“BomChildrenList”传递了一个或多个关联对象,但目标集合为 null。
- javascript createElement()创建input不能设置name属性的解决方法
- javascript createElement()创建input不能设置name属性的解决方法
- 关于变量的作用域04想要改变一个对象属性的正确方法