(1)反射机制概述
①反射的概念
②反射的意义
③反射的应用
(2)反射API介绍
①Class类
②Field类
③Method类
④Constructor类
(3)获取Class对象的方式
①调用某个对象的getClass()方法
Person p = new Person();
Class cl = p.getClass();
②调用某个类的class属性来获取该类对应的Class对象
Class cl = Person.class;
③使用Class类的forName()静态方法
Class cla = Class.forName("com.jia.Person");
(4)从Class类中获取信息
①获取构造方法
getConstructor();
getConstructors();
getDeclaredConstructor();
getDeclareConstructors();
②获取属性
getField();
getFields();
getDeclaredField();
getDeclaredFields();
③获取方法
getMethod();
getMethods();
getDeclaredMethod();
getDeclaredMethods();
(5)使用反射创建对象
(6)使用反射访问方法和属性
(7)动态创建和访问数组
Object arr = Array.newInstance(String.class,10);
Array.set(arr,5,"Jack");
Object ol = Array.get(arr,5);
①反射的概念
②反射的意义
③反射的应用
(2)反射API介绍
①Class类
②Field类
③Method类
④Constructor类
(3)获取Class对象的方式
①调用某个对象的getClass()方法
Person p = new Person();
Class cl = p.getClass();
②调用某个类的class属性来获取该类对应的Class对象
Class cl = Person.class;
③使用Class类的forName()静态方法
Class cla = Class.forName("com.jia.Person");
(4)从Class类中获取信息
①获取构造方法
getConstructor();
getConstructors();
getDeclaredConstructor();
getDeclareConstructors();
②获取属性
getField();
getFields();
getDeclaredField();
getDeclaredFields();
③获取方法
getMethod();
getMethods();
getDeclaredMethod();
getDeclaredMethods();
(5)使用反射创建对象
(6)使用反射访问方法和属性
(7)动态创建和访问数组
Object arr = Array.newInstance(String.class,10);
Array.set(arr,5,"Jack");
Object ol = Array.get(arr,5);