java内省
来源:互联网 发布:淘宝网店设计教程 编辑:程序博客网 时间:2024/06/05 16:44
内省
开发框架时,经常需要使用java对象的属性来封装程序的数据,每次都使用反射技术完成此类操作过于麻烦,所以sun公司开发了一套API,专门用于操作java对象的属性,例如类A中有属性name,那我们可以通过getName,setName来得到其值或者设置新的值。
小案例
import java.beans.*;
publicclassIntrospectorDemo {
String name;
intage;
//省略get,Set方法
publicstaticvoid main(String[]args)throws Exception{
IntrospectorDemo demo = newIntrospectorDemo();
demo.setName("LiWang");
demo.setAge(20);
/*如果不想把父类的属性也列出来的话,
那getBeanInfo的第二个参数填写父类的信息*/
BeanInfo bi = Introspector.getBeanInfo(demo.getClass(),Object.class);
//Property:财产 Descriptor:描述符
PropertyDescriptor[] props =bi.getPropertyDescriptors();
for(inti=0;i<props.length;i++){
System.out.println(props[i].getName()+"="+
//getReadMethod()获得用于读取属性值的方法(get())。
props[i].getReadMethod().invoke(demo,null));
}
}
}
结果:
age=20
name=Li Wang
- JAVA 内省
- java 内省
- java 内省
- Java内省
- java内省
- java内省
- java--内省
- Java内省
- java内省
- Java内省
- java--内省
- java内省
- java内省
- Java内省
- java内省
- Java内省
- Java内省
- java-内省
- 传递参数的技巧
- DataBinding系列(四):DataBinding进阶之路
- PAT乙级1070. 结绳(25)
- 小白浅谈android开发
- 常用的文件比较工具
- java内省
- delphi中使用sql语句加条件引用时值是一个整型变量的问题
- tcc分布式事务源码解析系列(一)之项目结构
- SpringMVC 重定向到其他系统的页面的两种方式
- 02:输出最高分数的学生姓名
- poj3723 Conscription
- SQL增删改查、SQL注入、事务
- TabLayout 资讯首页滑动
- photoshop mac版安装