本帖最后由 一碗小米周 于 2013-12-13 20:27 编辑
- import java.beans.PropertyDescriptor;
- import java.lang.reflect.Method;
- //获取Point类中的属性值,并设置。
- public class PointTest {
- public static void main(String[] args) throws Exception{
- Point pt = new Point(3, 5);
- String propertyName="x";
- //获取x值。 如果想获取x的值,为什么不直接用pt.getX()呢?这样不是更方便吗?为什么要用下面这种方式呢?请教各位。
- PropertyDescriptor pd = new PropertyDescriptor(propertyName,pt.getClass());
- Method getMethod = pd.getReadMethod();
- Object retVal = getMethod.invoke(pt);
复制代码
- public class Point {
- private int x;
- private int y;
- public Point(int x,int y){
- this.x=x;
- this.y=y;
- }
- public int getX() {
- return x;
- }
- public void setX(int x) {
- this.x = x;
- }
- public int getY() {
- return y;
- }
- public void setY(int y) {
- this.y = y;
- }
-
- }
复制代码
|