使用Setter或Boolean Getter进行变量

时间:2015-12-24 06:49:29

标签: java c++ coding-style

假设我有一个名为isConnected的实例变量和一个名为checkConnection的方法。我可以有:

实例变量isConnected和设置void checkConnection()变量的方法isConnected

OR

只有布尔方法bool checkConnection()

我觉得拥有一个实例变量毫无意义。每次您想要检查连接时,您都必须在使用checkConnection()之前调用isConnected。为什么不使用布尔方法?

这是一个语义问题,真的。

很抱歉,如果没有合适的类别来提出这个问题。

1 个答案:

答案 0 :(得分:0)

在单线程系统中,我更喜欢第二种方法,即不包括isConnected变量的方法。

在多线程系统(包括分布式系统)中,我更喜欢第一种方法,即isConnectedbool checkConnection()方法。您可以同步对变量的访问,以及任何关联的逻辑(或关键部分)。例如,您可以使用方法实现Test and Set