利用java反射机制获取一个类的所有字段

1.getFields():获得某个类的所有的公共(public)的字段,包括父类中的字段。 
2.getDeclaredFields():获得某个类的所有声明的字段,即包括publicprivate    proteced,但是不包括父类的申明字段。

3.同样类似的还有getConstructors()getDeclaredConstructors()getMethods()getDeclaredMethods(),这两者分别表示获取某个类的方法、构造函数。

4.获取此类中的所有字段
Field[] fields = User.class.getDeclaredFields();

4.1获取字段的名称

String fieldName = field.getName();

4.2获取字段的修饰符

int fieldValue = field.getModifiers();//如:privatestaticfinal

4.3与某个具体的修饰符进行比较

Modifier.isStatic(fieldValue)//看此修饰符是否为静态(static)

4.4获取字段的声明类型

field.getType()//返回的是一个class

4.5与某个类型进行比较

field.getType() == Timestamp.class

4.6获取指定对象中此字段的值

Object fieldObject= field.get(user);//user可以看做是从数据库中查找出来的对象

猜你喜欢

转载自www.cnblogs.com/TanShan/p/10537994.html