文章标题
来源:互联网 发布:金融类电影 知乎 编辑:程序博客网 时间:2024/05/21 06:17
反射
package org.test.base;public class User { private String name; private Integer sex; public String getName() { return name; } public void setName(String name) { this.name = name; } public Integer getSex() { return sex; } public void setSex(Integer sex) { this.sex = sex; } @Override public String toString() { return "User [name=" + name + ", sex=" + sex + "]"; }}
package org.test.base;import java.lang.reflect.Field;public class Hi { public static void main(String[] args) throws IllegalArgumentException, IllegalAccessException, InstantiationException, ClassNotFoundException { System.out.println(1); User he = new User();//有实例对象的反射 Field[] fields_he = he.getClass().getDeclaredFields(); he.setName("zhang san"); for(Field field : fields_he){ field.setAccessible(true);//暴力反射,将private强制转换为public System.out.println(field.getName()+" :"+field.get(he)); } System.out.println(2); User you = null;//无实例对象的反射 you = (User) Class.forName(User.class.getName()).newInstance(); you.setName("li si"); Field[] fields_you = you.getClass().getDeclaredFields(); for(Field field : fields_you){ field.setAccessible(true); System.out.println(field.getName()+" :"+field.get(you)); } System.out.println(3); User she = null;//无实例对象的反射 she = (User) ClassLoader.getSystemClassLoader().loadClass(User.class.getName()).newInstance(); she.setName("wang wu"); Field[] fields_she = she.getClass().getDeclaredFields(); for(Field field : fields_she){ field.setAccessible(true); System.out.println(field.getName()+" :"+field.get(she)); } }}
输出结果:1name :zhang sansex :null2name :li sisex :null3name :wang wusex :null
阅读全文
0 0
- 文章标题文章标题文章标题文章标题文章标题文章标题文章标题文章标题文章标题文章标题文章标题文章标题文章标题文章标题文章标题文章标题文章标题
- 文章标题
- 文章标题
- 文章标题
- 文章标题 文章标题 文章标题 文章标题
- 文章标题
- 文章标题
- 文章标题
- 文章标题
- 文章标题
- 文章标题
- 文章标题
- 文章标题
- 文章标题
- 文章标题
- 文章标题
- 文章标题
- 文章标题
- spring-cloud-hystrix之spring-cloud-1.3.4(Dalston.SR3)-boot(1.5.6) 学习笔记
- (图文)自己组建自己迷你linux系统
- CH375 usb芯片的引脚图及中文资料
- LeetCode编程练习
- 一把把事情做对
- 文章标题
- python 关于生成器的零碎
- 面向对象
- (一)ARM体系结构.硬件组成原理.工作模式
- 做了几道Linux笔试题1
- angular共享模块的使用
- Revit中Dynamo编程——Python代码(类)
- MyBatis知识点
- 线程——同步与死锁