具有首字母的成员变量的命名约定

时间:2012-07-30 13:34:48

标签: java naming-conventions member-variables

我想知道有人会如何命名以首字母开头的成员字段,而不是单词。

public class MyClass {

    // I know this is how it is for a member field with words.
    private String myString;

    // What about this String? It is representing the term "RV Scale" which is 
    // short for "Reclose Volts Scale."
    private String RVScale;

}

我知道我可以使用private String recloseVoltsScale,但我宁愿保留RVScale。如果有人知道它应该是rVScale还是RVScale还是其他什么我会很感激信息。

编辑:

此外,像这样的会员领域......

private int RV;

3 个答案:

答案 0 :(得分:4)

根据java 命名约定成员字段应以 mixedcase 开头,因此它应为rvScale,而RV之类的成员字段应为{ {1}}

使用正确的字母大小写是遵循命名约定的关键:

小写是一个单词中的所有字母都没有任何大小写的地方(例如,如果是mypackage)。

大写是单词中所有字母都以大写字母书写的地方。当名称中有两个以上的单词时,使用下划线将它们分开(例如,MAX_HOURS,FIRST_DAY_OF_WEEK)。

CamelCase (也称为Upper CamelCase)是每个新单词以大写字母开头的地方(例如,CamelCase,CustomerAccount,PlayingCard)。

混合大小写(也称为Lower CamelCase)与CamelCase相同,只是名称的第一个字母是小写的(例如,hasChildren,customerFirstName,customerLastName)。

答案 1 :(得分:2)

你应该拼写出来。

话虽如此,我会保留rvScale

请记住,唯一应该使用 NOT 的是rVScale,因为这可能会引起内省的混淆。

这种情况会生成名为getRVScalesetRVScale的getter和setter,但是使用bean introspection来查找与这些相关联的属性,会搜索名为RVScale的属性,该属性不存在。这是因为当搜索相应的属性时,get / set之后的第一个字母是较低的,除非大写(RV)中有两个相邻的字母,在这种情况下,名称保持原样,生产RVScale。

像这里解释的那样:

Javabean convention - method naming for property gId

答案 2 :(得分:1)

除非您需要,否则请勿使用快捷方式。即使它们是私有的(或者可能是因为它们),名称变量也足够清楚。如果潜在的代码阅读器不理解rv作为Reclose Volts之类的快捷方式,请不要使用快捷方式。如果您需要提供提示它实际上是快捷方式,您暗示他应该在某处查找它意味着什么。他会在哪里找到它?如果它在评论中,则您的成员名称错误,因为您必须解释该名称的含义。除非您的申请完全是关于Reclose Volts。我建议遵循java惯例,因为他们确实有理由出现。