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

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了跟王老师学反射使用反射调用属性相关的知识,希望对你有一定的参考价值。

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

主讲教师:王少华   QQ群号:483773664


学习内容

使用反射调用属性


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

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

(一)getXxx(Object obj)

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

(二)setXxx(Object obj,Xxx val)

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

二、测试

1
2
3
4
5
6
7
8
9
10
11
12
13
14
public static void test5()throws Exception{
        Class<Person> 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);
    }









以上是关于跟王老师学反射使用反射调用属性的主要内容,如果未能解决你的问题,请参考以下文章

跟王老师学反射:使用反射操作数组

跟王老师学反射:使用反射生成并操作对象

跟王老师学反射:反射应用小案例--进行对象拷贝

跟王老师学反射:动态代理

跟王老师学反射:Class类:获得Class对象

跟王老师学反射:反射概述