Java基础–Java反射和应用

什么是反射

反射就是指程序在运行的时候知道一个类的自身信息。

  • 对于任何一类:可以知道这个类的属性和方法
  • 对于任何一个对象:可以调用这个对象的任何一个方法和属性

反射就是将Java类中的各种成分映射成一个个Java对象

获取class文件对象的三种方式

  1. Object类的getClass()方法

    1
    2
    3
    4
    5
    6
    //1.在内存中新建一个Person的实例,对象p对这个内存地址进行引用
    Person p = new Person();
    //2.对象p调用getClass()返回对象p所对应的Class对象
    Class<?> cls = p.getClass();
    //3.调用newInstance()方法让Class对象在内存创建对应的实例,并且让p2引用实例的内存地址
    Person p2 = (Person)cls.newInstance();
  2. 静态属性class

  3. Class类中静态方法forName()