为什么JavaBean标准适用于布尔值而不是get

时间:2011-03-10 00:42:15

标签: java javabeans

为什么JavaBean标准设置为使用前缀is- for getter而不是get??

对于统一的命名约定来说,这似乎是一个非常好的地方,特别是对于单个类型只有一个getter。

2 个答案:

答案 0 :(得分:6)

读得更好。比较:

  • Girl.getBeautiful()
  • Girl.isBeautiful()

甚至

  • Coin.getGold()
  • Coin.isGold()

答案 1 :(得分:4)

你也可以在布尔上“获取”,这是允许的。我认为他们这样做是为了提高可读性。你说

if (bean.isImmutable()) { // Better 

而不是

if (bean.getImmutable()) { //Get what? 

另外,如果你在JavaBeans上使用反射并且你看到以“是”开头的getter方法,你可以进行类型检查以查看此getter方法的返回类型是否为布尔值(因为只有布尔值具有特殊性) “是”getter方法的情况。)