【解忧】深入理解Java反射-优选博客-Tsd/原创论坛-技术教程-优选博客

【解忧】深入理解Java反射-优选博客

当我们在 IDE 中编写代码的时候,打一个点号,IDE 会自动弹出对应的属性和方法名。当我们在 debug 的时候,IDE 会将方法运行时方法内局部变量和外部实例上属性的值都展示出来,spring 中的 IOC 和 AOP,以及一个 RPC 框架中,我们反序列化,consumer 的代理,以及 provider 的调用都会用到 Java 的反射功能,有人说使用反射会慢,那么到底慢在哪里呢?

反射

反射使 Java 语言有了动态编译的功能,也就是在我们编码的时候不需要知道对象的具体类型,但是在运行期可以通过 Class.forName() 获取一个类的 class 对象,在通过newInstance 获取实例。

先看下 java.lang.reflect 包下的几个主要类的关系图,当然动态代理的工具类也在该包下。

【解忧】深入理解Java反射-优选博客-优选博客
【解忧】深入理解Java反射-优选博客-优选博客
【解忧】深入理解Java反射-优选博客-优选博客

请登录后发表评论

    没有回复内容