反射一
来源:互联网 发布:淘宝客店铺做裂变 编辑:程序博客网 时间:2024/06/07 21:47
反射机制获取类有三种方法
1.Class<?> Classc = Class.forName("com.dt.reflect.User");
2.Class<?> Classc = User.class;
3. User Classc= new User();
Useruser =(User) Classc.newInstance(); //创建对象
user.setId(1);
user.setName("张三");
user.setAge(28);
System.out.println(user);
但是如果如果User 类有参构造函数的话就会报错
Exception in thread "main" java.lang.InstantiationException: com.dt.reflect.User
at java.lang.Class.newInstance(Class.java:427)
at com.dt.reflect.Test.main(Test.java:10)
Caused by: java.lang.NoSuchMethodException: com.dt.reflect.User.<init>()
at java.lang.Class.getConstructor0(Class.java:3082)
at java.lang.Class.newInstance(Class.java:412)
... 1 more
处理办法:import java.lang.reflect.Constructor ;// 导入反射机制包
Class<?> tt = null;
tt= Class.forName("com.dt.reflect.User");
Constructor<?> cons[] = null ;
cons = tt.getConstructors() ;
// User user = tt.newInstance(); 没有构造参数的实例化
User user =(User)cons[0].newInstance(1,"张三",30); //有构造函数参数的实例化
user.setId(1);
user.setName("张三");
user.setAge(28);
System.out.println(user);
- 反射一
- 反射(一)
- 反射一
- java反射(一):反射基础
- Java反射机制(一)
- c# 反射(一)
- 反射例子一
- C#反射学习(一)
- c# 反射(一)
- C#反射学习(一)
- C#反射(一)
- 反射应用(一)
- 反射浅谈一
- C#反射(一)
- Java反射机制一
- 理解反射(一)
- java反射一
- C# 反射(一)
- 9Club Online Casino Weekly Slots Rebate Bonus
- JavaScript 原型中的哲学思想
- Android Device Monitor的File Explorer下不显示目录树的问题(AndroidStudio2.2,AVD 7.0)
- Chapter 2.Jolokia Architecture 结构:
- 写一个我自己的文件管理工具类
- 反射一
- error while loading shared libraries: libevent-2.0.so.5解决办法
- Android Studio 导入项目报错:Some file crunching failed, see logs for details 解决方案
- user-scalable:用户是否可以手动缩放
- POJ 3278 Catch That Cow (BFS)
- 多态
- iPhone和iPad公用资源
- [UnityShader]点染队列、ZWrite和ZTest
- mysql模拟sqlserver的表MASTER ..spt_values实现查询最近30天的日期