文章标题
来源:互联网 发布:mysql connector java 编辑:程序博客网 时间:2024/05/22 03:38
反射
首先创建一个Person类
package cn.itcast.test09;public class Person { private String name; private String id; public Person(){} public Person(String name, String id) { super(); this.name = name; this.id = id; } public String getName() { return name; } public void setName(String name) { this.name = name; } public String getId() { return id; } public void setId(String id) { this.id = id; }}
- 使用反射操作无参构造方法
package cn.itcast.test09;public class TestDemo1 { public static void main(String[] args) throws Exception { Class clazz3=Class.forName("cn.itcast.test09.Person"); Person person=(Person) clazz3.newInstance(); person.setName("zhangsan"); System.out.println(person.getName()); }}结果:zhangsan
- 使用反射操作有参数的构造方法
package cn.itcast.test09;import java.lang.reflect.Constructor;public class TestDemo1 { public static void main(String[] args) throws Exception { Class clazz3=Class.forName("cn.itcast.test09.Person"); Constructor cs = clazz3.getConstructor(String.class,String.class); Person person = (Person) cs.newInstance("lisi","100"); System.out.println(person.getId()+" " +person.getName()); }}结果:100 lisi
- 使用反射操作属性
package cn.itcast.test09;import java.lang.reflect.Constructor;import java.lang.reflect.Field;public class TestDemo1 { public static void main(String[] args) throws Exception { Class c2 = Class.forName("cn.itcast.test09.Person"); Person p11 = (Person) c2.newInstance(); Field f1 = c2.getDeclaredField("name"); f1.setAccessible(true); f1.set(p11, "zhangsan"); System.out.println(f1.get(p11)); }}结果:zhangsan
- 使用反射操作普通方法
package cn.itcast.test09;import java.lang.reflect.Constructor;import java.lang.reflect.Field;import java.lang.reflect.Method;public class TestDemo1 { public static void main(String[] args) throws Exception { Class c4=Class.forName("cn.itcast.test09.Person"); Person p4=(Person) c4.newInstance(); Method m1=c4.getDeclaredMethod("setName", String.class); m1.invoke(p4,"niuqi"); System.out.println(p4.getName()); }}
1 0
- 文章标题文章标题文章标题文章标题文章标题文章标题文章标题文章标题文章标题文章标题文章标题文章标题文章标题文章标题文章标题文章标题文章标题
- 文章标题
- 文章标题
- 文章标题
- 文章标题 文章标题 文章标题 文章标题
- 文章标题
- 文章标题
- 文章标题
- 文章标题
- 文章标题
- 文章标题
- 文章标题
- 文章标题
- 文章标题
- 文章标题
- 文章标题
- 文章标题
- 文章标题
- 一起学fusioncharts 总结
- 程序员的进步在哪里?
- Hdu 4617 立体几何 异面直线距离
- 多线程运行不完整可能原因
- hdu 4915 Parenthese sequence (贪心+模拟)
- 文章标题
- Spring Security 体验
- E
- chrome调试
- 一般线性最小二乘法
- Android NDK学习 <二> Android.mk的制作
- WebView实现文件下载功能
- 网际协议IP
- ssh链接服务器报错