import java.beans.BeanInfo; import java.beans.Introspector; import java.beans.PropertyDescriptor; public class IntrospectorDemo { String nameTest; public static void main(String[] args) throws Exception { IntrospectorDemo demo = new IntrospectorDemo(); demo.setName("Winter Lau"); // 如果不想把父类的属性也列出来的话, // 那 getBeanInfo 的第二个参数填写父类的信息 BeanInfo bi = Introspector.getBeanInfo(demo.getClass(), Object.class); PropertyDescriptor[] props = bi.getPropertyDescriptors(); for (int i = 0; i < props.length; i++) { System.out.println(props[i].getName() + "=" + props[i].getReadMethod().invoke(demo, null)); } } public String getName() { return nameTest; } public void setName(String name) { this.nameTest = name; } }
name=Winter Lau