package com.spring.event;
import java.lang.reflect.InvocationTargetException;
import java.lang.reflect.Method;
public class Admin {
public Admin(){
}
private String id = "";
public String getId() {
System.out.print(id);
return id;
}
public void setId(String id) {
this.id = id;
}
public static void main(String[] args)
throws ClassNotFoundException, InstantiationException, IllegalAccessException,
SecurityException, NoSuchMethodException, IllegalArgumentException, InvocationTargetException {
String str="com.spring.event.Admin";
Class c=Class.forName(str);
Object obj=c.newInstance();
// 这里是里设置属性的值
Method m = c.getMethod("setId",new Class[]{Class.forName("java.lang.String")});
m.invoke(obj,new Object[]{"penghao122"});
// 这里是里获取属性的值
m = c.getMethod("getId",new Class[]{});
m.invoke(obj,new Object []{});
}
}
import java.lang.reflect.InvocationTargetException;
import java.lang.reflect.Method;
public class Admin {
public Admin(){
}
private String id = "";
public String getId() {
System.out.print(id);
return id;
}
public void setId(String id) {
this.id = id;
}
public static void main(String[] args)
throws ClassNotFoundException, InstantiationException, IllegalAccessException,
SecurityException, NoSuchMethodException, IllegalArgumentException, InvocationTargetException {
String str="com.spring.event.Admin";
Class c=Class.forName(str);
Object obj=c.newInstance();
// 这里是里设置属性的值
Method m = c.getMethod("setId",new Class[]{Class.forName("java.lang.String")});
m.invoke(obj,new Object[]{"penghao122"});
// 这里是里获取属性的值
m = c.getMethod("getId",new Class[]{});
m.invoke(obj,new Object []{});
}
}
Java反射机制实例
本文通过一个具体的Java程序示例介绍了如何使用Java反射机制来创建对象并调用其方法。示例中,首先定义了一个名为Admin的类,该类包含一个字符串类型的成员变量id及其getter和setter方法。然后通过反射机制动态地创建了Admin类的对象,并调用了其setter方法设置id的值为penghao122,最后调用了getter方法输出id的值。
1432

被折叠的 条评论
为什么被折叠?



