关闭

个人理解反射原理

标签: java反射
400人阅读 评论(0) 收藏 举报
分类:

1、通过反射可以获取到该类的所有的公共字段:

      getField(String name)       getField()

      可以使用setField()方法给字段赋值

2、通过反射可以获取到类中的所有的构造函数,通过获取到的构造函数可以对类进行加载

      过程:① 获取到类     ② 调用类的newsInstance()方法实例化

    (1)无参数构造函数

              Class c = Class.forName("String");

              String s = (String) c.newInstance();

    (2)有参数构造函数

              Class c = Class.forName("String");

              Constructor con = c.getConstructor(Class[] ... 变长数组);

              Class[] classes = new Class[]{String class...};

              String s = (String) con.newInstance(); 

      批量加载类的方法:

              public Object[] createClass(String[] strClassName);

3、通过反射获取到类的所有方法,并且可以通过invoke()方法调用该类的底层方法

      Method m = getMethod(String name,Class[] ... 可变数组);//获取想调用的方法

      getMethods();//获取类中的所有方法

      利用反射获取方法:

              m.invoke();

     

0
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:8390次
    • 积分:266
    • 等级:
    • 排名:千里之外
    • 原创:17篇
    • 转载:0篇
    • 译文:0篇
    • 评论:0条
    文章分类
    文章存档