JavaBeans 规范强行规定的!
JavaBean 中的属性是通过 get/set 方法名得来的,因此
getSname 对应的属性名是 sname
getSName 对应的属性名是 SName
如果写成 sName 或者 Sname 的话就是不合法的属性名。
在 Java 中要区分一下属性(property)与字段(field)或成员变量(member variable)的区别。
class Person{//这是一个JavaBean private String AA; private String Bb; private String cC; public String getAA() { return AA; } public void setAA(String aa) { AA = aa; } public String getBb() {//decapitalize(Bb)会得出属性是bb,实际是Bb return Bb; } public void setBb(String bb) { Bb = bb; } public String getCC() {//decapitalize(CC)会得出属性是CC,实际是cC return cC; } public void setCC(String cc) { cC = cc; } } public class JavaBeanTest { public static void main(String[] args)throws Exception { BeanInfo beanInfo = Introspector.getBeanInfo(Person.class); PropertyDescriptor[] pds = beanInfo.getPropertyDescriptors(); for(int i=0;i<pds.length;i++){ System.out.println(pds[i].getName()); } } } //输出: //AA //CC //bb