![](https://img-blog.csdnimg.cn/20201014180756780.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
java反射机制精讲
芜湖大司马
这个作者很懒,什么都没留下…
展开
-
加载器
说到反射,首先说类的加载器。 类的加载: 当程序要使用某个类时,如果该类还未被加载到内存中,则系统会通过加载,连接,初始化三步来实现对这个类进行初始化。 加载: 就是指将class文件读入内存,并为之创建一个Class对象。 任何类被使用时系统都会建立一个Class对象。 连接: 验证 是否有正确的内部结构,并和其他类协调一致 准...原创 2018-08-20 10:30:42 · 585 阅读 · 0 评论 -
获取class类文件对象的方法
1: Person p = new Person(); Class c = p.getClass(); 2:Class c2 = Person.class; 任意数据类型都具备一个class静态属性,看上去要比第一种方式简单. 3:将类名作为字符串传递给Class类中的静态方法forName即可 Class c3 = Class.forNam...原创 2018-08-20 10:47:06 · 366 阅读 · 0 评论 -
访问构造方法
其实各个书上对于反射这块讲的都是很乱,看了几个大神博主的帖子之后顺序自己弄清了很多。首先要介绍几种访问构造方法的方法,利用这种方法,将返回Constructor类型的对象或者数组A.1:获取构造方法的数组: public Constructor<?>[] getConstructors():获得所有公共构造方法 public Constructor<?&g...原创 2018-08-20 15:01:39 · 505 阅读 · 0 评论 -
java反射获取成员变量
A:获得类的成员变量 数组: 1、getFields(公共类的) 2、getDeclaredFields(所有类型的)B:获得类的单个成员变量: 1、getField (公共类的) 2、getDeclaredField (所有类型的) A.1:获得类的公共成员变量://获取类的字节码文件对象 Class c = Class.fo...原创 2018-08-20 16:00:45 · 3591 阅读 · 0 评论 -
java反射访问方法
通过下列一组方法访问方法是,将返回method类型的对象或者数组,每个method代表一个方法,利用method可以操纵对应的方法。A:获取所有方法 数组 1、getMethods 获取该类包括其父类的公共成员方法 2、getDeclaredMethods 获取该类的所有的成员方法B:获取单个方法 1、getMethod 获取该类所有的公共类单个成员方法 2、g...原创 2018-08-21 08:02:41 · 241 阅读 · 0 评论