乐趣区

关于java:Java-反射

反射

概念

Reflection(反射) 是 Java 程序开发语言的特色之一,它容许运行中的 Java 程序对本身进行查看,或者说“自审”,也有称作“自省”。反射十分弱小,它甚至能间接操作程序的公有属性。

反射就像一面镜子,它能够在运行时获取一个类的所有信息,能够获取到任何定义的信息(包含成员变量,成员办法,结构器等),并且能够操纵类的字段、办法、结构器等局部。

为什么须要反射

好好的咱们 new User(); 不是很好,为什么要去通过反射创建对象呢?

在开发的世界里,spring 就是业余的组织,它来帮咱们创建对象,治理对象。咱们不在 new 对象,而间接从 spring 提供的容器中 beans 获取即可。Beans 底层其实就是一个 Map<String,Object>,最终通过 getBean(“user”) 来获取。而这其中最外围的实现就是利用反射技术。

暴力反射

指能够将程序中的公有的属性或者办法通过反射技术,暴力的获取到资源,能够取得公开的资源,甚至是公有的资源。暴力反射的办法个别就是在反射的办法上加上 Declared 这个单词。

退出移动版