java中如何通过反射获取类的属性

Python025

java中如何通过反射获取类的属性,第1张

简单的方法如下:

Class<?>cls=Class.forName(className)////////////////////////通过类的名称反射

Object obj=cls.newInstance()//////////////////////对象实例化

Field field=cls.getField(fieldName)/////这个对应的是属性

fieldValue=field.get(obj)////这个就是属性的值

反射不是通过get取值的,是通过该对象的信息,比如说名称、内存地址等来访问类,方法,属性等,可以获取任意对象的信息,但不能获得私有属性(private String s=“sd”;)的值,切记

推荐《JAVA核心技术》这本书会对你有帮助的

1、过去某个类的某个属性:

2,可以通过对象调用其属性:

3,创建对象 :类名  对象名 = new 类名();

4,调用属性:对象名.属性

5,获取某个对象的所有属性

6,数组类型[]  数组名  = 对象名.getClass().getDeclaredFields()

7,使用反射

public static void main(String[] args) {

Model model = new Model()

Field fd = new Field()

fd.getField(model)

}

private void getField(Object model) {

java.lang.reflect.Field[] fields = model.getClass().getDeclaredFields()

for(java.lang.reflect.Field f:fields){

System.out.println(f.getName())

}

}