(1)定义一个标准的Person类,包含属性变量name,并包含属性对应的setXX/getXX方法(如setName方法和getName方法)、空参构造。 (2)使用反射的方式创建一个Person实例对象。 (3)使用反射方式调用setName()方法对name的值进行设置。 设置之后,在通过反射方式执行getName()方法。
时间: 2023-11-27 10:51:53 浏览: 221
下面是实现代码:
```java
import java.lang.reflect.Constructor;
import java.lang.reflect.Method;
public class Person {
private String name;
public Person() {}
public Person(String name) {
this.name = name;
}
public void setName(String name) {
this.name = name;
}
public String getName() {
return name;
}
public static void main(String[] args) throws Exception {
// 创建Class对象
Class cls = Class.forName("Person");
// 通过反射创建对象
Constructor constructor = cls.getConstructor();
Person person = (Person) constructor.newInstance();
// 通过反射设置属性值
Method setNameMethod = cls.getDeclaredMethod("setName", String.class);
setNameMethod.invoke(person, "Tom");
// 通过反射获取属性值
Method getNameMethod = cls.getDeclaredMethod("getName");
String name = (String) getNameMethod.invoke(person);
System.out.println("name: " + name);
}
}
```
输出结果:
```
name: Tom
```
阅读全文