public class Main {
public static void main(String[] args) throws Exception {
String name = "Xiao Ming";
int age = 20;
Person p = new Person();
// TODO: 利用反射给name和age字段赋值:
Class c = p.getClass();
Field f1 = c.getDeclaredField("name");
Field f2 = c.getDeclaredField("age");
f1.setAccessible(true);
f1.set(p,name);
f2.setAccessible(true);
f2.set(p,age);
System.out.println(p.getName()); // "Xiao Ming"
System.out.println(p.getAge()); // 20
}
}
class Person {
private String name;
private int age;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
}
韬韬蒙塔基