java 反射知识浅析
来源:互联网 发布:微视频 软件 编辑:程序博客网 时间:2024/05/16 01:40
测试用的javabean
public class Person { public String name="孙红华"; private int age=23; public Person() { System.out.println("无参构造器");}public Person(String name, int age) { System.out.println("有参构造器");this.name = name;this.age = age;} public void wash(String name){ System.out.println("wash"); }}
反射的几个基本处理类
public class ReflectClass {public static void main(String[] args) throws Exception {// TODO Auto-generated method stub// 创建无参数的person对象Constructor constructor = Class.forName("com.javabean.Person").getConstructor();constructor.newInstance();Class.forName("com.javabean.Person").newInstance();// 直接创建对象 // 不需要通过构造器// 获取特定的构造器Constructor constructor1 = Class.forName("com.javabean.Person").getConstructor(String.class, int.class);Person person = (Person) constructor1.newInstance("sunhonghua", 12);// 获取变量Person person1 = new Person("孙红华", 23);Field filename = person1.getClass().getField("name");System.out.println("name=" + filename.get(person1));/* * * private的成员变量必须使用getDeclaredField,并setAccessible(true),否则看得到拿不到 暴力反射 */Field fileage = person1.getClass().getDeclaredField("age");fileage.setAccessible(true);System.out.println("age=" + fileage.get(person1));// 获取方法Method[] methods = Class.forName("com.javabean.Person").getMethods();for (Method method : methods) {System.out.println("方法名:" + method);// 可以得到Object的方法 另外注意构造器不是方法}// 调用特定方法 传递参数 方法名和参数类型列表Person person2 = new Person("孙红华", 23);Method washMethod = person2.getClass().getMethod("wash", String.class);washMethod.invoke(person2, "12345");// 调用Person.wash方法}}
0 0
- java 反射知识浅析
- 浅析Java反射机制
- Java 反射机制浅析
- Java 反射机制浅析
- Java 反射机制浅析
- Java 反射机制浅析
- Java 反射机制浅析
- 浅析java反射机制
- Java反射机制浅析
- java反射机制浅析
- Java 反射机制浅析
- Java反射机制浅析
- java 反射浅析
- Java 反射机制浅析
- java反射机制浅析
- Java反射机制浅析
- Java 反射机制浅析
- Java 反射机制浅析
- 该怎样迅速确定php多维数组的深度?
- 单片机 波特率设置
- 删除.svn文件
- 第八章 排序
- 报错:“不支持关键字:‘userid’”
- java 反射知识浅析
- OpenStack Swift学习笔记
- C/C++使用Lu键树实现智能指针及检查内存泄露
- 2013年12 月26日传智播客IT人才专场招聘会成功举办
- ubuntu 下 利用ffplay 播放 yuv 格式的文件
- Oracle instant client的使用
- java数组——数组查找binarySearch()
- LR数据收集分析 Analysis 名词解释
- CES亮点提前曝光 产业风向标指明方向