Java:访问器的命名约定
我正在寻找Java中关于访问器的官方命名约定
例如,我看到JPanel
类不赞成size()
方法,而赞成getSize()
但是在ArrayList
类中,方法是size()
所以我想知道访问器应该命名为getXXX()
还是xXX()
你可以在下面搜索框中键入要查询的问题!
我正在寻找Java中关于访问器的官方命名约定
例如,我看到JPanel
类不赞成size()
方法,而赞成getSize()
但是在ArrayList
类中,方法是size()
所以我想知道访问器应该命名为getXXX()
还是xXX()
# 1 楼答案
对于任何试图看起来像JavaBean的东西,它应该是
getXXX
或isXXX
。(我不记得hasXXX是否对布尔属性也有效……不确定。)对设计师等来说,以一种豆的方式对待
JPanel
是有意义的,但对ArrayList
来说则不然就我个人而言,我倾向于使用getXXX形式,只是为了保持一致性,但我相信以上是
ArrayList
命名的原因# 2 楼答案
不使用JavaBeans约定(getter和setter)通常是个坏主意
许多框架都通过反射来使用它们,尤其是在EL中,有时如果没有权限获取程序(取决于EL的风格),就无法访问字段
因此,您的访问器应该始终命名为
getXxx()
或isXxx()
和setXxx()
集合框架中的
size()
是一个“缺陷”的例子,它会让开发人员感到烦恼(参见下面的链接)。乔希·布洛赫(Josh Bloch)和尼尔·加夫特(Neal Gafter)选择让它更具可读性,这使得在某些情况下很难获得它(EL)但是记住JavaBeans约定不是Java命名约定
资源:
关于同一主题:
# 3 楼答案
在Eclipse中,惯例肯定是使用
get
模式。automisation工具通过检查和编写get
和set
样式的访问器来创建和处理getter