什么是反射:
JAVA反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用它的任意一个方法和属性;这种动态获取的信息以及动态调用对象的方法的功能称为java语言的反射机制。
反射的应用:
通过反射机制得到类的相关信息
1.1得到相关信息的步骤:
1)得到类的类型obj.getClass()---------关键!!
2)通过调用java.lang.Class的方法得到类的相关信息
1.2类的相关信息包括:
类的方法信息(方法有参数Parameter);类的成员变量信息;类的构造函数信息(推荐使用c.getDeclaredConstructor())
/**
* 成员变量也是对象
* java.lang.reflect.Field
* Field类封装了关于成员变量的操作
* getFields()方法获取的是所有public的成员变量
* getDeclaredFields()获取的是所有自定义的成员变量
*/
/*
* 构造函数也是对象
* java.lang.Constructor封装了对构造函数的信息
* getConstructors()获取所有public的构造函数
* getDeclaredConstructors()获取所有的构造函数信息
*/