【发布时间】:2014-01-13 05:37:18
【问题描述】:
我对在 Java 中定义字符串常量的看法是,当在多个地方使用同一个字符串时,应该定义一个字符串常量。这有助于减少拼写错误,减少将来更改字符串等的工作量。
但是在一个地方使用的字符串怎么样。即使在这种情况下,我们是否应该声明字符串常量。
例如。记录一些计数器(随机示例)。
CounterLogger.addCounter("Method.Requested" , 1)
- 声明常量而不是使用原始字符串有什么好处吗?
- 编译器是否进行任何优化?
【问题讨论】:
-
不,不……
-
无论字符串文字出现多少个类或Jars,JVM都会合并字符串文字池中使用的所有字符串文字。
-
不,不...除了国际化
-
如果您将字符串定义为常量(可能在单独的类中或将它们存储在特殊文件中),查找和编辑它们会更容易。有时非常容易。
-
虽然跑题了,但我觉得this link值得一提。