Java反射获取某个类的全部属性,步骤所用方法如下:
1.forName()返回给定串名相应的类对象。
2.getDeclaredFields()返回当前类对象表示的类或接口的所有已说明的域对象数组。
3.getFields()返回当前类对象表示的类或接口的所有可访问的公有域对象数组。
4.getModifiers()返回该类或接口的Java语言修改器代码。
5.getName()返回类对象表示的类型(类,接口,数组或基类型)的完整路径名字符串。
//获取某个类的全部属性
软件包net.xsoftlab.baike;
导入java.io.Serializable;
导入java.lang.reflect.Field;
导入java.lang.reflect.Modifier;
公共类TestReflect实现了Serializable {
私有静态最终长serialVersionUID = -2862585049955236662L;
公共静态void main(String [] args)引发异常{
Class <?> clazz = Class.forName(“ net.xsoftlab.baike.TestReflect”);
System.out.println(“ ==============本类属性==============);
//取得本类的全部属性
Field [] field = clazz.getDeclaredFields();
for(int i = 0; i <field.length; i ++){
//权限修饰符
int mo = field [i] .getModifiers();
字符串priv = Modifier.toString(mo);
//属性类型
Class <?> type = field [i] .getType();
System.out.println(priv +“” + type.getName()+“” + field [i] .getName()+“;”));
}
System.out.println(“ ==========实现的接口或父类的属性==========);
//取得实现的接口或父类的属性
Field [] filed1 = clazz.getFields();
for(int j = 0; j <filed1.length; j ++){
//权限修饰符
int mo = filed1 [j] .getModifiers();
字符串priv = Modifier.toString(mo);
//属性类型
Class <?> type = filed1 [j] .getType();
System.out.println(priv +“” + type.getName()+“” + filed1 [j] .getName()+“;”);
}
}
}
以上就是极悦小编介绍的“Java反射获取属性的方法”的内容,希望对大家有帮助,如有疑问,请在线咨询,有专业老师随时为您服务。
你适合学Java吗?4大专业测评方法
代码逻辑 吸收能力 技术学习能力 综合素质
先测评确定适合在学习