java PropertyDescriptor 应用
程序员文章站
2022-05-24 09:09:47
...
1. 概述
Java类中的私有的(private)属性是获取不到的(即使使用继承依然获取不到),那如果非要获取私有属性的值怎么办呢?一般的做法是将该java类封装称为一个JavaBean,即封装该私有属性,提供一对共有的get,set方法来访问私有属性。一般情况下都会这样做!但遇到特殊情况呢?比如,现有一个需求:访问一个Java类的私有属性,并且该类不提供访问该私有属性的共有方法。
//创建一属性描述器
PropertyDescriptor pd = new PropertyDescriptor(name,
User.class);
//得到setter方法
Method setter=pd.getWriteMethod();
if (value.length == 1) {
setter.invoke(u, value[0]); //对带有指定参数的指定对象调用由此 Method 对象表示的底层方法。
} else {
setter.invoke(u, (Object)value);
}
PropertyDescriptor描述Java Bean中通过一对存储器方法(getter / setter)导出的一个属性。我们可以通过该PropertyDescriptor对bean中的该属性进行读取和写入操作,也可以设置其getter / setter。
上一篇: 十二生肖狗有哪些象征意义?忠诚,预兆吉凶,辟邪除灾
下一篇: 暴风影音怎么永久关闭自动弹出暴风盒子?