热门IT资讯网

跟王老师学反射(七)使用反射调用属性

发表于:2024-11-24 作者:热门IT资讯网编辑
编辑最后更新 2024年11月24日,学习内容使用反射调用属性通过Class对象的getFields()|getDeclaredFields()或getField()|getDeclaredField()方法可以获取该类所有包括的全部属性

学习内容

使用反射调用属性


通过Class对象的getFields()|getDeclaredFields()或getField()|getDeclaredField()方法可以获取该类所有包括的全部属性或指定的属性

一、Field类用于猎取类中的属性的方法

(一)getXxx(Object obj)

获取obj对象该Field的属性值,此处Xxx对应8个基本类型。

(二)setXxx(Object obj,Xxx val)

将obj对象的该Field设置为val值。此处Xxx对应8个基本类型。

二、测试

1234567891011121314public static void test5()throws Exception{ Class personClass = Person.class; Person person = personClass.newInstance(); //得到setName方法 Method method = personClass.getDeclaredMethod("setName", String.class); //调用访问权限检查 if(!method.isAccessible()){ method.setAccessible(true); } //调用setName,为name赋值 Object object = method.invoke(person, "wangwu"); System.out.println(person); System.out.println(object); }



0