Neo*_*mex 2 java global-variables
为什么使用全局变量是个坏主意?
我想为所有要使用的类创建一个可用的变量数组.它将存储关键状态,因此不能将其设置为const(final).
你能告诉我一些其他(正确的)如何做到这一点的方法吗?
为什么使用全局变量是个坏主意?
因为它破坏了封装.所有代码都可以访问它们并进行修改.
我想为所有要使用的类创建变量数组
如果所有代码只使用一个实例,则可以使用单例:
public class MyGlobalKeys {
private static final MyGlobalKeys globals = new MyGlobalKeys();
// disable construction outside of this class
private MyGlobalKeys() {}
public void getInstance() {
return globals;
}
public void addKey(String key, bool state) { ... }
public bool hasKey(String key) { ... }
// and so on ...
}
Run Code Online (Sandbox Code Playgroud)
请注意,此示例特别不是线程安全的 - 对于改进的实现方法,请参阅Java Singleton Design Pattern
| 归档时间: |
|
| 查看次数: |
4303 次 |
| 最近记录: |