java - 在类中为自己的字段使用 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 - 如何从 JTextArea 复制?

java - 访问jar内的图像

java - addView equivalente 但将 Preference 添加到 PreferenceScreen?

java - 过滤 - 如何让 JTable 显示 x 数量的字段