我通過爲什麼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對 –