反射的概念是指程序可以访问、检测和修改它本身状态或行为的一种能力,通俗来说就是获得自身的信息并能够进行修改。
要弄懂反射就要弄懂Java的类加载器机制。在Java中每个,class文件都有一个对应的Class对象,类的加载指的是将类的.class文件中的二进制数据读入到内存中,将其放在运行时数据区的方法区内,然后在堆区创建一个这个类的java.lang.Class对象,用来封装类在方法区类的对象。通过Class对象我们就可以知道这个Clas文件的所有信息,如字段,方法,构造方法,父类,注释等。
阅读全文