为什么java中没有像C++这样的全局变量?
2022-09-04 23:41:48
为什么Java中没有全局变量?如果我喜欢在程序的所有类中使用任何变量,那么我该怎么做呢?
如果你真的想这样做,让它成为一个公共静态变量。
但是,建议您尽量不要这样做 - 它使代码变得不那么优雅,更难维护,更难测试代码。
全局变量(在 Java 上下文中 - 变量)是坏的,因为:public static
更难维护 - 您无法将断点或记录变量的每个更改,因此运行时的意外值将很难跟踪和修复
更难测试 - 阅读Miško Havery的帖子
更难阅读 - 当有人看到代码时,他会想知道:
为了澄清一个似乎需要的澄清 - 变量!=常量。变量会发生变化,这就是问题所在。因此,拥有一个是完全可以的 - 没有人可以改变它。public static final int DAYS_IN_WEEK = 7