黑马程序员技术交流社区
标题:
怎么也找不到哪里出错了
[打印本页]
作者:
张智文
时间:
2013-8-9 17:09
标题:
怎么也找不到哪里出错了
import java.beans.IntrospectionException;
import java.beans.PropertyDescriptor;
import java.lang.reflect.Constructor;
import java.lang.reflect.InvocationTargetException;
import java.lang.reflect.Method;
class Person{
private String name;
public Integer age;
public Person(){
}
public Person(String name,Integer age){
this.name=name;
this.age=age;
}
public void setName(String name) {
this.name = name;
}
public String getName() {
return name;
}
public void setAge(Integer age) {
this.age = age;
}
public int getAge() {
return age;
}
}
public class JavaBeanTest{
public static void main(String[]args){
Class clazz=Person.class;
try {
Person p=(Person) clazz.newInstance();
p.setName("jay_ma");
String propertyName="age";
PropertyDescriptor pd=new PropertyDescriptor(propertyName,clazz);
Method method=pd.getWriteMethod();
method.invoke(p, new Integer(20));
System.out.println("姓名:"+p.getName()+"年龄:"+p.getAge());
} catch (InstantiationException e) {
e.printStackTrace();
} catch (IllegalAccessException e) {
e.printStackTrace();
} catch (IntrospectionException e) {
e.printStackTrace();
} catch (IllegalArgumentException e) {
e.printStackTrace();
} catch (InvocationTargetException e) {
e.printStackTrace();
}
}
}
复制代码
作者:
杨增坤
时间:
2013-8-9 17:46
没有错误啊,我运行了一遍没有错误!
结果显示:
姓名:jay_ma年龄:20
作者:
草帽
时间:
2013-8-9 17:54
问题出在
public int getAge() {
return age;
}
复制代码
JavaBean中有一个set方法,一个get方法。注意方法名和参数名的关系,注意方法返回值的对应。
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2