码迷,mamicode.com
首页 > 其他好文 > 详细

反射讲解

时间:2019-08-16 22:58:51      阅读:88      评论:0      收藏:0      [点我收藏+]

标签:可见   tor   obj   declare   red   span   实例   for   declared   

反射Reflect

通过方法区加载的类对象来执行

获取一个类的定义信息

  获得一个类的定义信息

  包名、类名

  成员变量信息

  构造方法信息

  方法定义信息

利用反射创建新对象

反射访问成员变量

反射调用方法

 

获取类对象 Class的三种方式

  1.类名.class

  2.Class.forName("完整类名")

  3.实例.getClass()

有一系列的方法可以获取改类的信息,具体自己可以尝试。

常用如下

 Class c =  Class.forName("");

获取完整类名

  c.getName()

获取类名,不包含包名

  c.getSimpleName()

获取成员变量的信息

  getFields()

    加载可见的成员变量

  getDeclareFields()

    加载全部的呈成员变量,包括private

  getField("变量名")

  getDeclaredField("变量名")

  getDeclaredField("变量名")

获取构造方法

   getConstructors()

  其他方法如上类似。

方法的定义信息

  getMethods()

    可见的方法

  其他的类似上面的定义,具体不在阐述

通过反射构建实例对象

  执行无参构造

    Object obj = c.newInstance()

  执行有参构造

     1.获得构造方法

       1.Constructor t = c.getConstructor(int.class, String.class)

        2.通过

   

反射讲解

标签:可见   tor   obj   declare   red   span   实例   for   declared   

原文地址:https://www.cnblogs.com/l-x-x-y-d-j/p/11366489.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!