我通过为什么PropertyDescriptor以大写字母返回属性名称作为第一个字符?
Introspector.getBeanInfo(this.getClass()).getPropertyDescriptors()
获取有关类的信息,然后通过调用propery[i].getName()
获取属性的名称。
如果一个属性没有一个字母部分,一切都很好。例如,如果某个物业的名称为personAddress
(与此同时其获取者/设置者 - >,setPersonAddress(String personAddress)
)是OK,getName()
返回personAddress
。
但如果酒店有一个名字rPersonId
(getRPersonId()
,setRPersonId(Long rPersonId)
)然后getName()
返回“RPersonId”,即第一个字母已经大写!为什么?
根据https://docs.oracle.com/javase/7/docs/api/java/beans/FeatureDescriptor.html:
public String getName()
- >获得此特性的编程名称。
那么为什么它会返回一个名字,它与其getter或setter的名称有关,而不是属性的真实名称?
答案并不能解释为什么第一个字符是不是小写。 – Tunaki
谢谢你的回应! –
谢谢你的回应! 该链接https://docs.oracle.com/javase/7/docs/api/java/beans/PropertyDescriptor.html说PropertyDescriptor有几个构造函数。哪一个是通过调用getBeanInfo(this.getClass())。getPropertyDescriptors()来调用的? 它只是说,如果我自己创建一个PropertyDescriptor,那么我必须提供一个getter/setter对 –