近半年来,一直在做java的工作,刚开始接触项目,什么都不会,只会做最简单的,增删改查。到现在,终于有自己的一些心得了。
首先是关于反射,在java中一切皆对象,所有类型都可以转换成Object类,而又都可以从Object类转回来。可见在转换的过程其实就是对象所属变了,里面的内容没变,从反射的流程可以看出来,一个通用的Object对象,可以获取到它的methods,然后通过method可以调取该方法。method.invoke(arg1,arg2);arg1就是method对应的对象,arg2就是对应对象调用method方法是该传入的参数值。
流程代码:
Method[] methods;
methods=obj.getClass().getMethods(); //获取obj所有方法
for(Method method:methods){ //循环获取单个方法
Object result=method.invoke(part, null); //执行该方法
}
其次是获取对象所属的属性或字段,Field类可以接受所有对象中的属性。
代码:
Field[] fields = this.pojoClass.getDeclaredFields();
for (Field f : fields) {
if ((f.getName()==“字段名”) {
//处理该字段
}
}