首先看看什么是内省,我在网上找,也没找出什么具体定义,我就以自己的理解来说吧!内省是java的反射机制对javaBean的一种特例处理方式!简单说就是:内省就是javaBean在知道属性名的情况下,来访问类中的get和set方法,或得属性名的值 !!(要是不知道什么是javaBean或者不知道什么是反射,那看看其他资料吧),还有就是如果是属性值和变量值一样的话,个人觉得如果用包里反射应该也许能够达到同样的目的!不多说了!看代码吧:
        第一个是一个javaBean的例子,我们操作就是对他操作!class="java">
package one;
public class JavaBeanTest {
    private int x=0;
    private int y=8;
    private String string = new String("这是一个javabean的测试");
    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;
    }
    public String getString() {
        return string;
    }
    public void setString(String string) {
        this.string = string;
    }    
}
     然后是我们的主类:
package one;
import java.beans.BeanInfo;
import java.beans.Introspector;
import java.beans.PropertyDescriptor;
import java.lang.reflect.Method;
public class Test {
    public static void main(String[] args) throws Exception {
        // 实例化一个javabean的对象
        JavaBeanTest javaBeanTest = new JavaBeanTest();
        // 这是个属性名
        String propertyName = new String("x");
        /*
         * 第一种方法
         */
        // 属性描述符
        // PropertyDescriptor propertyDescriptor = new
        // PropertyDescriptor(propertyName, javaBeanTest.getClass());
        // 通过属性名得到方法
        // Method methodGetX = propertyDescriptor.getReadMethod();
        // Object returnVal = methodGetX.invoke(javaBeanTest);
        // System.out.println(object);
        /*
         * 另一种方法
         */
        Object returnVal = null;
        BeanInfo beanInfo = Introspector.getBeanInfo(javaBeanTest.getClass());
        PropertyDescriptor[] pds = beanInfo.getPropertyDescriptors();
        for (PropertyDescriptor pd : pds) {
            if (pd.getName().equals(propertyName)) {
                Method methodGetX = pd.getReadMethod();
                returnVal = methodGetX.invoke(javaBeanTest);
                break;
            }
        }
        System.out.println(returnVal);
    }
}
     在这个类里我用了两种方法,第一种是比较简单,也可以解决问题,第二种是常规方法,大多网上都是用的这种方!
      分享让更多人收益!