1
263
记录器引用不是常量,而是最终引用,不应为大写。常量值应为大写。
|
2
201
为了给crunchdog的答案增加更多价值, Java Coding Style Guide 在第3.3段“字段命名”中对此进行了说明。
依照本公约,
|
3
39
从有效的Java,第二版,
总之,constant==static final,加上它是一个引用(与简单类型相比),是不可变的。 看看SLF4J记录器, http://www.slf4j.org/api/org/slf4j/Logger.html 它是不变的。另一方面,jul记录器是可变的。log4j记录器也是可变的。所以正确的说,如果您使用log4j或jul,它应该是“logger”,如果您使用slf4j,它应该是logger。 请注意,上面链接的slf4j javadocs页面有一个示例,其中使用的是“logger”,而不是“logger”。 当然,这些只是惯例而不是规则。如果您碰巧使用了slf4j,并且您希望使用“logger”,因为您已经习惯了其他框架中的日志,或者如果它更容易键入,或者为了可读性,请继续。 |
4
30
我喜欢谷歌的表现( Google Java Style )
实例:
|
5
10
如果您使用自动化工具检查编码标准,它违反了上述标准,那么应该修复它或标准。如果您使用的是外部标准,请修复代码。 Sun Java中的约定对于公共静态常量是大写的。显然,记录器不是常量,而是表示一个可变的东西(否则就没有必要对它调用方法,以希望发生某些事情);对于非常量的最终字段没有特定的标准。 |
6
7
如果你谷歌搜索这个,你可能会发现在某些情况下,记录器并没有被定义为静态的final。添加一些快速的copy-n-paste来解释这一点。 我们使用记录器 在我们所有的代码中,这与我们的命名约定相对应(并且我们的checkStyle对此很满意)。 我们甚至更进一步,利用Eclipse中严格的命名约定。 我们使用以下代码模板创建了一个新类:
日志记录程序被注释掉,因为最初我们不需要它。但如果我们以后需要它,我们只是取消注释。 然后在代码中,我们使用期望这个记录器存在的代码模板。 Try-Catch模板示例:
我们有更多的模板可以使用它。 这个 严格的约定使我们能够更高效地与代码模板保持一致。 . |
7
6
我个人认为它看起来真的很大。此外,由于它是一个与类行为没有直接关系的类,所以我看不到使用中的主要问题
|
8
4
别忘了PMD会尊重
在里面。这将导致PMD跳过其检查中的行,这将允许您选择所需的样式。 |
9
3
常量通常为大写。 但是,如果使用slf4j外观,记录器不应该是静态的,而是查找包含类的每个“新”类。这避免了一些特别是Web容器中的令人讨厌的类加载器问题,而且它允许记录器框架根据调用上下文执行特殊的工作。 |
10
1
如果您的编码标准——如果您有——说它应该是大写的,那么是的。 我看不出有任何严格的理由。我认为这完全取决于你个人的喜好。贵公司的编码标准。 顺便说一句:我更喜欢“记录器”;-) |
Alaa AbuZarifa · 将方法参数复制到最终temp变量无效 6 年前 |
CameronCoob · 最终var更改值JAVA 6 年前 |
gcolucci · 函数调用后最终对象失去属性值 7 年前 |
Goji Berry · 错误:无法为最终变量赋值 7 年前 |