getter 方法和 returns 实例变量状态的方法之间的区别?
difference between a getter method and a method which returns the state of an instance variable?
我正在通读 Guava 库,我将 运行 保存到如下所示的方法中:
@Override public int size() {
return size;
}
以上和以下之间有什么区别(在战略上、惯例上等)?
@Override public int getSize() {
return size;
}
还是没有区别?只是 shorthand 吗?
一种形式没有使用 JavaBeans conventions。从功能上讲,如果您对 bean 使用非常规 getters/setters,那么期望您遵循这些约定的系统将无法工作或设置起来非常麻烦,但如果您 不是 ,那就没有什么区别了。
由于Guava有很多集合,而且Collection
接口实际上定义了a size()
method,我的直觉告诉我Guava更倾向于遵循Collection
接口而不是JavaBeans约定.
- 在性能方面没有区别。
- 就可读性而言,它们也很相似,但
getAttribute
详细说明了此方法的作用 (size
可能意味着我们需要做一些额外的计算,吸气剂在大多数情况下只是 returns 值)。
- 但我怀疑人们倾向于将他们的方法命名为 get/set... 的主要原因是让他们的 class 成为正确的 JavaBean,它将被使用 JavaBeans 的工具正确处理喜欢 Expression Language。
关于你的例子。我怀疑因为 List
s 不应该被视为 JavaBean
s 所以没有要求 return size
和 getSize()
如此简单 size()
够了。
我正在通读 Guava 库,我将 运行 保存到如下所示的方法中:
@Override public int size() {
return size;
}
以上和以下之间有什么区别(在战略上、惯例上等)?
@Override public int getSize() {
return size;
}
还是没有区别?只是 shorthand 吗?
一种形式没有使用 JavaBeans conventions。从功能上讲,如果您对 bean 使用非常规 getters/setters,那么期望您遵循这些约定的系统将无法工作或设置起来非常麻烦,但如果您 不是 ,那就没有什么区别了。
由于Guava有很多集合,而且Collection
接口实际上定义了a size()
method,我的直觉告诉我Guava更倾向于遵循Collection
接口而不是JavaBeans约定.
- 在性能方面没有区别。
- 就可读性而言,它们也很相似,但
getAttribute
详细说明了此方法的作用 (size
可能意味着我们需要做一些额外的计算,吸气剂在大多数情况下只是 returns 值)。 - 但我怀疑人们倾向于将他们的方法命名为 get/set... 的主要原因是让他们的 class 成为正确的 JavaBean,它将被使用 JavaBeans 的工具正确处理喜欢 Expression Language。
关于你的例子。我怀疑因为 List
s 不应该被视为 JavaBean
s 所以没有要求 return size
和 getSize()
如此简单 size()
够了。