先引用一下官方的定义: JAVA反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用它的任意一个方法;这种动态获取的信息以及动态调用对象的方法的功能称为java语言的反射机制。 一般我们的代码是.java 文件,经过编译变成系统可读的.class文件,也就是说所有的东西都已经写死了,执行的就是.class的内容。 反射机制相当于一个接口,我们往接口上插入什么东西,他就能把这个东西加入到.class文件中。 打个比方,原来的class文件相当于我们的电脑硬盘,而映射相当于usb接口,本来电脑里只能打开硬盘上的东西(不联网状态),有个usb接口我们就能动态的读不同的东西,就是你插不同U盘我就读不同的东西。 所以反射机制使java变为动态的。 三大框架通过配置文件的方式其实就是用到了反射机制,通过反射机制他才能读取你不同的配置(U盘)。