本帖最后由 一梦 于 2018-5-13 00:15 编辑
陈世彪: 反射,java在运行中,我们可以通过反射获取它字节码文件里所有的东西,例如成员变量,成员方法,构造方法,包括私有的
通过获取的构造创建对象
步骤:
1.获得Class对象
2获得构造
3.通过构造对象获得实例化对象
操作成员方法
Public static void method(){}
1无参无返回值
Public static int method(){}
2 无参有返回值
Public static void method(参数){}
3 有参无返回值
Object obj =c.newInstance("lisi",30); 创建对象
FieldgetDeclaredField(String name) //获取指定的成员变量 包含私有
setAccessible(true);//设置反射时取消Java的访问检查,暴力访问
1setProperty 用来给对象中的属性赋值
2getProperty 用来获取对象中的属性
3Populate 用来给对象中的属性赋值
catch(NoSuchFieldException e) {}
自定义工具类时捕获异常并抛出
|