含义
反射之所以被称为框架的灵魂,主要是因为它赋予了我们在运行时分析类以及执行类中方法的能力。
通过反射你可以获取任意一个类的所有属性和方法,你还可以调用这些方法和属性。
场景
动态代理 注解 + 反射
1 |
优缺点
优点:
可以让咱们的代码更加灵活、为各种框架提供开箱即用的功能提供了便利。
缺点:
让我们在运行时有了分析操作类的能力,这同样也增加了安全问题。比如可以无视泛型参数的安全检查(泛型参数的安全检查发生在编译时)。另外,反射的性能也要稍差点,不过,对于框架来说实际是影响不大的。
实战
获取 Class 对象的四种方式
1 | // 1.知道具体类的情况下可以使用 |