<分区>
通常,在我自己的项目中,我使用 getter 和 setter 来访问任何字段,我在工作中也遵循同样的做法。前段时间,我们项目的技术负责人问我为什么要这样做,为什么这比仅使用字段本身更好(如果子类需要访问它们,可以选择声明它们 protected )。我想不出一个明确的答案。
那么,是否有任何理由在类内部为类自己的字段使用 getter 和 setter,还是直接使用字段更好?
标签 java
<分区>
通常,在我自己的项目中,我使用 getter 和 setter 来访问任何字段,我在工作中也遵循同样的做法。前段时间,我们项目的技术负责人问我为什么要这样做,为什么这比仅使用字段本身更好(如果子类需要访问它们,可以选择声明它们 protected )。我想不出一个明确的答案。
那么,是否有任何理由在类内部为类自己的字段使用 getter 和 setter,还是直接使用字段更好?
最佳答案
最明显的答案是副作用:
int getCost()
{
if (cost == null) {
calculateCost();
}
return cost;
}
如果您需要成本,请使用 getCost()
。如果您想查看成本是否已计算,请使用 cost
。
关于java - 在类中为自己的字段使用 getter/setter 有什么好处吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4312801/
相关文章:
java - Android,ListView中的交替行布局,可以用ArrayAdapter来完成吗?
java - 在什么情况下 getInstance 将返回 null 以及在多线程环境中如何返回
java - virtualbox - 无法从 java 移动共享文件夹中的文件
java - 多线程将如何影响 Easy Rules 引擎?
java - 无法使用 JDBC 驱动程序连接到本地主机上的 MySQL
java - 是否可以在运行时提供新的 PropertiesConfiguration 文件?
java - addView equivalente 但将 Preference 添加到 PreferenceScreen?