【问题标题】:Java constant variable, naming convention [duplicate]Java常量变量,命名约定[重复]
【发布时间】:2012-09-13 05:22:10
【问题描述】:

java常量变量有什么命名约定吗?
通常我们使用名称包含大写字母和下划线(_) 的变量。

例如:

public final class DeclareConstant {

    public static final String CONSTANT_STRING = "some constant";

    public static final int CONSTANT_INTEGER = 5;

}

【问题讨论】:

  • 它被称为上蛇壳,顺便说一句

标签: java variables constants


【解决方案1】:

是的。这就对了。它也经常用于enum

唯一常见的例外是记录您可能看到的地方

private static final Logger log = Logger.getLogger(getClass().getName());

但我更喜欢LOG

我经常把它写成 UPPER_CASE,但我也把 TitleCase 写成类,camelCase 写成变量和方法。

【讨论】:

  • 为什么在 Logger 的情况下我们使用 private static final Logger log = Logger.getLogger(getClass().getName()); ?
  • 我不确定这是真的@peter-lawrey。 API 中的事物 File.separator 是小写的。我认为约定是如果 rhs 必须做某事,例如获取记录器,那么它是小写的。如果它真的是一个常数,那么它是大写的
【解决方案2】:

没错。据孙说:

Scroll to the bottom see constants

常量

声明的类常量和 ANSI 常量的变量名 应全部大写,单词之间用下划线 ("_") 分隔。 (应避免使用 ANSI 常量,以便于调试。)

静态最终 int MIN_WIDTH = 4;

静态最终 int MAX_WIDTH = 999;

静态最终 int GET_THE_CPU = 1;

【讨论】:

  • 请在答案中引用相关段落,以方便参考并保证将来访问。
  • @chepner:刚刚编辑过。感谢您的评论!
  • 您能解释一下“ANSI 常量”是什么以及它们与其他static final 常量有何不同吗?
  • 似乎不存在任何与 Java 相关的 ANSI 常量定义。 (来源:SOcoderanch.com
  • @chepner - 好评论!截至目前,链接已失效,感谢您,我能够阅读相关部分;)
【解决方案3】:

其中许多命名约定是在 IDE 广泛使用之前创建的。如今,静态常量的颜色将不同于局部变量,因此使用特定命名约定来识别它们的需要大大减少。我建议现在可读性是一个更重要的问题,并建议改用驼峰式。

但要回答您的问题,其他答案是正确的,这是官方约定。 ;)

【讨论】:

  • 恕我直言,静态常量的命名不同于局部变量。
  • 我想说的大写常量增强了可读性。尽管现代 IDE 当然也有帮助。一些符号说你应该在成员变量之前有一个“m”,例如然而,mMember 也是如此,在实际更改名称的情况下,我会说这些天使用 IDE-coloring 就足够了。
【解决方案4】:

变量是标识符。

有 3 种方法来命名标识符:

  1. 骆驼案: 用于命名函数、变量

    例如:int streamJavaMethod() 或对于变量,arrayBoss;

  2. 帕斯卡案例: 用来命名一个类

    例如:类 StreamJavaClass()

  3. 大写: 用于命名常量

    例如:饼图

虽然这些只是命名约定,但不需要遵循严格的规则。 专业的java程序员使用它。

【讨论】:

    【解决方案5】:

    是的,通常当一个变量为static final 时,它会声明一个名称,所有大写字母,单词之间用下划线分隔,如您所见。

    【讨论】:

      猜你喜欢
      • 2011-11-07
      • 1970-01-01
      • 2015-12-29
      • 1970-01-01
      • 2010-09-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-08-06
      相关资源
      最近更新 更多