非静态的 java final 变量的命名约定

Jin*_*tin 5 java final naming-conventions

我在java类中有一个方法。

public void myMethod() {
    final String methodName = "myMethod";
}
Run Code Online (Sandbox Code Playgroud)

当我通过声纳中的分析运行此代码时,我收到一个问题说

重命名这个常量名以匹配正则表达式 '^[A-Z][A-Z0-9]*(_[A-Z0-9]+)*$'

我使用这个变量的目的是在 Logger 语句中使用它来跟踪我的应用程序流。

这个变量不是static变量。我已经浏览了https://softwareengineering.stackexchange.com/questions/252243/naming-convention-final-fields-not-static。但我没有得到清晰的画面。有人可以帮我为我的最终(非静态)变量提供正确的命名约定吗?

Men*_*ena 13

您正在谈论一个局部变量,范围为您的方法。局部变量遵循大多数 Java 字段的命名约定,即camelBack.

只有编译时常量(static final在类级别声明的字段)“需要”大写,并用下划线分隔单词。

一些文档页面:


tbs*_*ing 6

您创建了一个局部变量,该变量恰好是最终变量。因此,根据http://docs.oracle.com/javase/tutorial/java/nutsandbolts/variables.html ,您的命名是正确的。