JAVA基础知识点总结_反射
反射
我们通常都是利用new方式来创建对象实例,这可以说就是一种“正射”,这种方式在编译时候就确定了类型信息。
而如果,我们想在运行时候动态地获取类信息、创建类实例、调用类方法这时候就要用到反射。
反射的概念
类
反射是指在 运行状态 中,对于任意一个类 都能够知道这个的类的属性和方法。、
对象
对于任意一个对象 都能够调用他的任意一个方法和属性。
这种动态获取的信息以及动态调用对象的方法的功能 统称为java语言的反射机制。
反射在实际开发中的应用
Spring/Spring Boot、MyBatis 等等框架中都大量使用了反射机制。
像 Spring 里的很多 注解 ,它真正的功能实现就是利用反射。
可以基于反射操作类,然后获取到类/属性/方法/方法的参数上的注解,注解这里就有两个作用,一是标记,我们对注解标记的类/属性/方法进行对应的处理;二是注解本身有一些信息,可以参与到处理的逻辑中。
Java 程序的执行分为编译和运行两步,编译之后会生成字节码(.class)文件,JVM 进行类加载的时候,会加载字节码文件,将类型相关的所有信息加载进方法区,反射就是去获取这些信息,然后进行各种操作
参考文章:https://blog.csdn.net/sinat_38259539/article/details/71799078