反射
反射的概述
Java反射机制是在运行状态中,对于任意一个类,都能知道这个类的所有属性和方法,这种动态获取的信息及动态调用对象方法的功能称为反射机制
反射的基础——Class类
Class对象的由来是将class文件读入内存,并为之创建一个对象Class。Class类的实例表示正在运行的Java应用程序中的类和接口,也就是jvm中有N多的实例每个类都一个Class对象。
通过查看API,我们可以发现Class类是JDK1.0就提供了的,Class没有公共的构造方法,class对是加载类时由Java虚拟机以及通过调用类的加载器中的defineClass方法自动构造的(这一点,将在JVM原理的时候讲解)。
那么既然没有构造方法,我们如果获的该类的实例对象呢?
获取Class对象的三种方法
1、Object类中提供了getClass()方法
2、任何数据类型都有一个class属性
3、通过Class类的静态方法:Class.forName(String classname)