具有 Setter 或布尔值 Getter 的变量

Variable with Setter or Boolean Getter

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

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

只有一个布尔方法bool checkConnection()

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

确实是语义问题。

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

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

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