2

我想知道建议将 if 语句等逻辑放在哪里,我应该在 setter 中还是在 getter 中进行?例如,当我尝试在 setter 中执行此操作时,它不起作用:

if ("female".equals(gender)) {
   this.gender = "girl";
}

但是当我在吸气剂中这样做时它正在工作,然后我只返回性别;一切都应该如此。那么为什么这个语句在 setter 中不起作用呢?

4

1 回答 1

2

没有固定的规则来判断是否最好将逻辑放入gettersetter(或两者都不)。您必须根据您的应用程序做出决定。

一般来说,我建议这样做,getter因为性别可能永远不会被要求,在这种情况下,如果你在 setter 中这样做,你会浪费微不足道的处理能力和内存。

此外,逻辑可能会附加到其他字段,这些字段在您设置性别时可能具有不同的值,而不是在您请求时。

于 2013-07-13T21:10:07.937 回答