3

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

getGId是我假设的。

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

如果该属性只是url方法名称getUrl看起来不错,是的,我不会首先将该属性命名为 URL,这会使访问器再次变得丑陋 -getURL

我记得在某处读过 Javabean Specification PDF,内容是关于属性的大写以及涉及首字母缩略词的案例,但在 PDF 中找不到了。

有没有人提到它或请确认我所说的是否正确?

4

2 回答 2

6

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

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

因此,该规范似乎不允许您提供任何属性的一致翻译,即第一个小写字符后跟一个大写字符。

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

于 2012-06-20T06:55:18.973 回答
0

为了更具体(正如 Luca 和这里所说的),规范告诉你有一个方法可以告诉你:java.beans.Introspector.decapitalize(String)

于 2013-11-06T12:44:55.873 回答