Java 私有静态字段,名称是否应以下划线开头?

Java 私有静态字段,名称是否应以下划线开头?,java,Java,我遇到了一个命名约定列表,想知道如何命名我的非最终私有静态字段。链接,规则38 资源声明非最终私有静态变量名应以下划线开头 但是,我个人从未遇到过任何强制执行此规则的Java代码。这是假的,还是我应该遵守它?没有命名约定规定字段应以下划线开头 但是,它通常用于在代码中明确哪些是局部变量,哪些是私有静态变量。另一种方法是确保引用所述变量时使用ClassName.,或将它们全部保留在大写字母中。不存在这样的情况。事实上,该约定要求您不要以下划线或美元开头变量名,即使这是允许的 此外,这只是个人喜好。

我遇到了一个命名约定列表,想知道如何命名我的非最终私有静态字段。链接,规则38

资源声明非最终私有静态变量名应以下划线开头

但是,我个人从未遇到过任何强制执行此规则的Java代码。
这是假的,还是我应该遵守它?

没有命名约定规定字段应以下划线开头

但是,它通常用于在代码中明确哪些是局部变量,哪些是
私有静态变量。另一种方法是确保引用所述变量时使用
ClassName.
,或将它们全部保留在大写字母中。

不存在这样的情况。事实上,该约定要求您不要以下划线或美元开头变量名,即使这是允许的


此外,这只是个人喜好。您所从事的项目可能遵循一些不同的约定,这些约定与标准约定不同。

参考Java有“官方”。但与任何公约一样,这些公约都不是强制性的。它们只是惯例,是个人喜好的问题。在我看来,重要的是,你同意团队中的一些惯例。哪一个是无关紧要的。

在Java camelCase中,没有下划线字段是实际的“约定”,然而,在许多项目中,我看到C/C惯例,即在字段中加下划线,以便能够在类变量/实例变量和局部变量之间有所不同。

我会避免使用非最终静态字段,那么你就不必考虑给它们命名了


如果您仍然需要,请不要使用下划线。

我从未批准使用下划线命名约定。
这可能是一些人无法放弃的C风格惯例的倒退


行业标准是将它们命名为“正常”(就像您命名任何变量名称一样)。

这完全由您决定。。只要名字有意义。。。我个人更喜欢“不使用”下划线。。我建议camelCase…这样的语法标准是非常主观的,我已经看到生产代码库遵守了这一点,而其他代码库则没有。这个问题很可能已经解决了,我要说的是:非最终私有静态变量首先不应该存在。可变的静态变量是危险的。你在问我们是否有人对命名风格的看法是假的。这个问题没有客观的答案。