Java的反射用途及其获取反射的三种方法

发布时间 2023-05-05 20:02:09作者: RS_mine

(1)反射的用途有多种:

  ① 框架设计:在框架设计中,我们通常需要使用反射技术来解耦,使框架可扩展和灵活。
  ② 单元测试:在单元测试中,我们可以使用反射技术来访问私有或受保护的类成员,使测试更加全面。
  ③ 动态代理:使用反射技术可以创建动态代理对象,从而可以在运行时期代理任意的一个实现了接口的对象(这里指的是JDK动态代理技术),实现AOP等功能。
  ④ JavaBean:JavaBean是一种轻量级组件,它封装了一个JavaBean类的属性和方法,并提供了访问和修改JavaBean属性的方法。反射技术可以访问和修改JavaBean类的私有属性和方法。
  ⑤ 序列化和反序列化:许多Java序列化和反序列化工具都是基于Java反射机制实现的,例如Java的objectInputStream和objectOutputStream。

(2)Java获取反射的三种方法:

  第一种,通过Class.forName(xxx.xx.xxx)静态方法,其返回的是一个类。

  第二种,使用 类.class方法。

  第三种,使用 实例对象.getClass()方法。