什么是反射机制

JAVA反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用它的任意方法和属性;这种动态获取信息以及动态调用对象方法的功能称为java语言的反射机制。

反射的用法

反射获取字节码对象的方法有3种:

  1. 第一种:
    使用object的getClass()方法
Person person = new Person();
        Class<Person> clazz = person.getClass();

这种方法必须要明确具体的类(Person),然后创建Person的对象。

  1. 第二种:
    任何的数据类型都具有一个静态的.class属性来获取其对应的Class对象。
Class<Person> clazz = Person.class;

这种方法就不需要创建Person对象,相对第一种简单很多。

  1. 第三种:
    只要通过给定的类的字符串名称就可以得到该类,其扩展性更高。用Class类中的forName()方法完成。
Class clazz = Class.forName("com.text.reflect.Person");

里面传入完整的包名