一、反射
从class字节码文件获取+解剖
获取class(字节码文件)对象的三种方式
第二种方式一般用在锁对象上 —— synchronized (Student.class)
利用反射获取构造方法
代码实现:
获取想要的构造函数,传递相应的字节码文件:
获取构造函数的权限修饰符:
getDeclaredConstructor方法只是看到构造方法,无法使用私有权限的构造方法,因此若要使用私有权限的构造方法创建对象时,需要先调用setAccessible方法,表示临时取消权限校验(暴力反射),代码如下: (这段代码获取的构造方法con4是私有构造方法)
利用反射获取成员变量
利用反射获取成员方法
下面这个方法的参数:第一个参数是方法的名字,第二个参数是形参的字节码文件,有多个形参要写多个字节码文件