首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >声纳抱怨我们使用"_“变量declaration..Cant?

声纳抱怨我们使用"_“变量declaration..Cant?
EN

Stack Overflow用户
提问于 2016-03-23 09:15:19
回答 3查看 4.1K关注 0票数 1
代码语言:javascript
复制
private String producer_queueName = "cn";

名称'consumer_queueName‘必须匹配模式'^a-z*$’。

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

我想使用_。我怎样才能消除这个错误:

代码语言:javascript
复制
must match pattern '^[a-z][a-zA-Z0-9]*$'. 
EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2016-03-23 10:07:00

这只是来自Sonar的警告,告诉您您不符合java标准。在Java中,对私有变量使用camelCase是标准的。_应仅用于静态最终变量。

例如:

代码语言:javascript
复制
//Conforming private variable with camelCase
private String producerQueueName = "cn";

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

声纳并不是告诉你你不能做你正在做的事情,只是你没有遵守标准。这可能会使其他人更难阅读您的代码。

有关java命名约定的更多细节,请参见这里

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

票数 6
EN

Stack Overflow用户

发布于 2016-03-23 10:07:57

声纳信息不是错误。

基本规则是一种最佳做法,但并非所有人都同意。每个团队应该讨论哪些规则是重要的,哪些是应该停用的。

对于这个特定的规则,我认为大多数Java程序员会认为这是一个重要的规则,因为(正如stjepano已经提到的),这是Java命名约定的一部分(例如,camel大小写表示变量名,camel大小写表示变量名,camel大写为类名,等等)。这使得阅读其他人的代码更加容易。

票数 1
EN

Stack Overflow用户

发布于 2021-06-03 03:37:30

在这里输入图像描述

如果您有这种类型的错误,^[a-z][a-zA-Z0-9]*$,您应该做的是重命名您的变量没有字符作为一个例子,_

在这种情况下,将是:

代码语言:javascript
复制
private String producerQueueName = "cn";
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/36173965

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档