本帖最后由 进击的蜗牛 于 2015-7-16 22:14 编辑
问题 定义一个标准的JavaBean,名叫Person,包含属性name、age。
使用反射的方式创建一个实例、调用构造函数初始化name、age,使用反射方式调用setName方法对名称进行设置,
不使用setAge方法直接使用反射方式对age赋值。
代码 //用反射创建实例对象,调用构造函数初始化name,age
Constructor constructors = Person.class.getConstructor(String.class,int.class);
Person p = (Person)constructors.newInstance("张三",22);
System.out.println(p);
//用反射调用setName
Method methodsetName = Person.class.getMethod("setName",String.class);
methodsetName.invoke(p, "李四");
System.out.println(p); //这个结果为 李四 ,22
System.out.println(methodsetName.invoke(p, "李四"));//这个为什么结果为null?不一样吗?
//不使用setAge方法直接使用反射方式对age赋值。这个代码怎么写?
|
|