反射

一、反射概念

1.1反射机制

 

 

 

 其中,class字节码文件是存储在硬盘上,想变成对象进入内存中,要通过类加载器ClassLoader对象,加载类,将类的各个组成部分封装成Class类对象,和各个对应的数组对象;

2、反射好处

 其中,如对象名点方法,就是用的反射机制,即将Class类对象的成员方法数组按个展示;

二、反射常用方法之获取和处理成员变量

1.1 获取和设置成员变量使用Class类对象的Field对象:

 

 1.2 字节码Class文件反射之后的Field对象操作:

 

 

 

 

 先获取Class类的对象,getFields()是获取的Field对象的数组;

 

1.3 获取public权限修饰符意外的属性:

 

 

 三、反射之获取和处理构造方法

t

 

 1、通过Constructor对象创建对象(调用有参构造):

 

 

 

 

2、调用无参构造创建对象:

 

 其中,直接Class对象的成员方法newInstance()最简洁;也有暴力反射,针对私有构造方法而言;

 

 四、反射之成员方法

1、

 

 

 

 2、调用有参方法:

 

3、获取所有public方法和获取方法名

 

 也可以暴力反射,获取除了public权限修饰符意外的方法;

四、获取类名,包路径加类名

 

 

posted @ 2019-09-15 16:41  wmqiang  阅读(137)  评论(0编辑  收藏  举报