反射

image.png
  1. 源代码阶段,是储存在硬盘的,Person.class为字节码文件
    Class类对象阶段,是已经在内存中储存了反射出的对象,方便操作,且解耦合

  2. 获取class对象的方法:
    Class.forName("类名"),将字节码文件加载进内存,返回class对象
    ps:多用于配置文件,将类名定义在配置文件,读取文件,加载类
    类名.class,通过类名的属性class来获取
    ps:多用于传参
    对象.getclass,此方法在object类中有定义
    ps:用于获取字节码

    • 同一个字节码文件 *.class ,在一次程序运行过程中只被加载一次,不论通过哪种方式获取的class对象都是同一个。
  3. 使用class对象能干啥:


    image.png
  4. 获取src下的配置文件路径


    image.png

你可能感兴趣的:(反射)