1.反射是发生在程序运行期间的行为,在以后的框架或技术的底层大量使用到了反射技术,使用代码变得更灵活,更简单
- 1).创建对象这个类型的Class对象的一个镜像|复制体
- 2).类加载到内存的时候,就在内存中存在的,不用我们手动创建就已经存在,并且只一个类只有一个表示这个类的Class对象
- 3).你能拿到一个类型的Class对象,能够使用Class类中的这些成员方法操作这个类型
- Java 反射机制,可以实现以下功能:
①在运行时判断任意一个对象所属的类;
②在运行时构造任意一个类的对象;
③在运行时判断任意一个类所具有的成员变量和方法;
④在运行时调用任意一个对象的方法;
⑤生成动态代理。 - 获取类的 class 对象,也有三种方式:
①Class.forName(”包名.类名”)//一般尽量采用该形式
②类.class
③对象.getClass() - 通过反射操作数组: Array
- 创建数组static Object newInstance(Class<?> componentType, int length) 创建一个具有指定的组件类型和长度的新数组。
- 赋值static void set(Object array, int index, Object value) 将指定数组对象中索引组件的值设置为指定的新值。
- 获取值 static Object get(Object array, int index) 返回指定数组对象中索引组件的值。