Javabean约定 – 属性gId的方法命名

如果我的Java类中有一个属性’gId’,那么访问器方法应该被命名为什么?

getGId是我的假设。

如果有一个属性gURL我认为它将是getGURL ,哪种看起来很难看(虽然不是指女孩的替代拼写)。

如果属性只是url ,方法名称getUrl在眼睛上是好的,是的,我不会首先将属性命名为URL,这将使访问者再次丑陋 – getURL

我记得从Javabean规范PDF中读取有关属性大写的内容以及涉及首字母缩写词的案例,但不能再在PDF中找到它。

有没有人提到它或请确认我说的是对的?

您感兴趣的参考资料可以在第8.8节的Beans规范中找到。

话虽如此,它没有明确涵盖您的gId / gURL特定情况。 规范说要提供一个getter / setter,我们只需将首字母大写。 要从getter / setter恢复属性,如果前两个字母是大写,则整个属性保持原样。 否则我们将第一个字母的资本化。 所以你的getter会变成getGURL ,但你的属性会被错误地从getter中恢复为GURL 。 你有同样的问题与gId

因此,似乎规范不允许您使用第一个小写字符后跟大写字符来提供任何属性的一致转换。

我的建议是采用完全小写的属性,或者将小写前缀扩展为两个字母(例如glURL )。

为了更加具体(并且如Luca和此处所述),规范告诉我们有一种方法可以告诉你: java.beans.Introspector.decapitalize(String) 。