Android(java)学习笔记108:通过反射获取私有构造方法并且使用
16lz
2021-01-25
1 package cn.itcast_02; 2 3 import java.lang.reflect.Constructor; 4 5 /* 6 * 需求:通过反射获取私有构造方法并使用 7 * private Person(String name){} 8 * 9 * Person p = new Person("风清扬");10 * System.out.println(p);11 */12 public class ReflectDemo3 {13 public static void main(String[] args) throws Exception {14 // 获取字节码文件对象15 Class c = Class.forName("cn.itcast_01.Person");16 17 // 获取私有构造方法对象18 // NoSuchMethodException:每个这个方法异常19 // 原因是一开始我们使用的方法只能获取公共的,下面这种方式就可以了。20 Constructor con = c.getDeclaredConstructor(String.class);21 22 // 用该私有构造方法创建对象23 // IllegalAccessException:非法的访问异常。24 // 暴力访问25 con.setAccessible(true);// 值为true则指示反射的对象在使用时应该取消Java语言访问检查。26 Object obj = con.newInstance("风清扬");27 28 System.out.println(obj);29 }30 }
更多相关文章
- 详解Android中通过Intent类实现组件间调用的方法
- android 中 startActivityForResult 的使用方法
- Android系统编译so库提示error undefined reference to '__andro
- 在Android中启动执行java程序
- Android(安卓)Studio 太卡解决方法
- Android(安卓)Studio 快捷键整理分享-SadieYu
- Android(安卓)APP安装后不在桌面显示图标的应用场景举例和实现方
- Android(安卓)Studio技巧 --新学的几个快捷键
- Android中解析JSON形式的数据