看一下定义了两个类的代码,解决一个问题
public class ReflectPoint {
private int x;
private int y;
public ReflectPoint(){}
public ReflectPoint(int x, int y) {
super();
this.x = x;
this.y = y;
}
下面还有x、y的get、set方法
public class IntroSpectorTest {
public static void main(String[] args) throws IntrospectionException, IllegalArgumentException, IllegalAccessException, InvocationTargetException {
ReflectPoint rp=new ReflectPoint(4,8);
String propertyName="x";
PropertyDescriptor pd=new PropertyDescriptor(propertyName, rp.getClass());
Method methodGetX=pd.getReadMethod();
Object retVal=methodGetX.invoke(rp);
System.out.println(retVal);
String propertyName="x";这里就直接给它x的值了,x的值是从上面这个类ReflectPoint的成员变量,当我们不知道ReflectPoint的成员变量的时候,这时候我们该什么给
这个String propertyName=??赋值呢,也就是说不直接给定一个x的值,我们还能通过另一种方式来赋值呢? |
|