java - Sonar 提示变量声明..我们不能使用 "_"吗?

标签 java sonarqube naming-conventions

private String producer_queueName = "cn";

Name 'consumer_queueName' must match pattern '^[a-z][a-zA-Z0-9]*$'.

使用 _ 有什么问题? Java 是否不允许您对任何变量使用 _

我想使用_。我怎样才能摆脱这个错误:

must match pattern '^[a-z][a-zA-Z0-9]*$'. 

最佳答案

这只是 Sonar 的警告,告诉您您不符合 Java 标准。在 Java 中,私有(private)变量使用驼峰命名法是标准的。 _ 应该只用于静态最终变量。

例如:

//Conforming private variable with camelCase
private String producerQueueName = "cn";

//Conforming private static final variable with "_"
private static final String PRODUCER_QUEUE_NAME = "cn";

Sonar 并不是在告诉您您不能做您正在做的事情,只是说您不符合标准。这可能会使其他人更难阅读您的代码。

参见 here有关 Java 命名约定的更多详细信息。

如果您希望在 Sonar 中禁用该规则,则需要在您使用的质量配置文件中禁用该规则。参见 here有关如何执行此操作的文档。

关于java - Sonar 提示变量声明..我们不能使用 "_"吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36173965/

相关文章:

java - 如何从另一个线程中唤醒一个线程?

sonarqube - 基于 Sonar 结果的 Jenkins 构建管道失败

jenkins - 从 Jenkins 插件执行 SonarQube Scanner 期间出错

Java Spring MVC 文件夹/命名约定

PHP 命名约定?

user-interface - 常用 GUI 元素列表

java - 需要创建一行 10 个数字,同时有 6 的倍数

java - 我从 MQTT 接收消息的代码不起作用?

Java varargs 方法参数列表与数组

maven - 如何配置多模块 Maven + Sonar + JaCoCo 来提供合并的覆盖率报告?