- Java反射机制指的是:
- 在运行时判断任意一个对象所属的类;
- 在运行时构造任意一个类的对象;
- 在运行时判段任意一个类所具有的成员变量和方法;
- 在运行时调用任一个对象的方法;
- 在运行时创建新类对象;
在使用Java的反射功能时,首先要获取类的Class对象,然后通过Class对象获取其他的对象。
- Class对象的获取
- 对象的getClass()方法;
- 类的.class属性;
- 运用Class.forName(String className)动态加载类,className需要是类的全名。
-
Class类的常用方法
- getName()
Class类中最常用的方法getName以 String 的形式返回此 Class 对象所表示的实体(类、接口、数组类、基本类型或 void)名称。 - newInstance()
newInstance()是Class的一个可以为类创建一个实例的这个方法。newInstance()方法调用默认构造器(无参数构造器)初始化新建对象。 - getClassLoader()
返回该类的类加载器。 - getComponentType()
返回表示数组组件类型的 Class。 - getSuperclass()
返回Class所表示的实体(类、接口、基本类型或 void)的父类的Class。 - isArray()
判定此 Class 对象是否表示一个数组类。 - getMethod(String name, Class<?>... parameterTypes)
返回Class包含的方法。 - getField(String name)
返回Class包含的属性。 - getInterfaces()
返回Class实现的接口。 - getPackage()
返回Class所在包。 - getModifiers()
返回Class的修饰符。 - getDeclaringClass()
返回Class的外部类 - getDeclaredClasses()
返回Class的内部类
- getName()
待续。。。