【发布时间】:2014-04-17 13:42:37
【问题描述】:
在任何 Java 程序中,一般来说,我几乎总是有 getter 和 setter 方法。在调用 getter 方法之前调用 setter 方法是通常要遵循的规则。但是,理论上,可以在不调用 setter 方法的情况下调用 getter 方法。我很好奇的是,当我在调用setter方法之前错误地调用getter方法时,是否有任何OO设计可能会在编译时抱怨。
【问题讨论】:
-
我不知道,除非您在 getter 检索到的对象为 null 时显式抛出异常。
-
“在调用 getter 方法之前调用 setter 方法是通常遵循的规则”:为什么?
-
也许您的 getter 可以返回标准的未初始化值,正确记录在您的 Javadoc 中,例如 null ?
-
还没有。您始终可以使用构造函数将对象初始化为其默认值,然后在必要时使用 setter 更改值。还有
Exceptions在这里派上用场。 -
如果在您的情况下您想保护这一点,那么您可以在声明时分配一些默认值或为此使用构造函数。
标签: java getter-setter