Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/327.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 实例变量的正确命名约定是什么?_Java_Coding Style_Naming Conventions - Fatal编程技术网

Java 实例变量的正确命名约定是什么?

Java 实例变量的正确命名约定是什么?,java,coding-style,naming-conventions,Java,Coding Style,Naming Conventions,在我的编程入门课程中,我的老师在代码中声明实例变量时总是使用以下命名约定: public class Snowman { private Ellipse _top; private Ellipse _middle; private Ellipse _bottom; public Snowman() { _top = new Ellipse(); _top.setColor(Color.WHITE); _top.setFra

在我的编程入门课程中,我的老师在代码中声明实例变量时总是使用以下命名约定:

public class Snowman {
    private Ellipse _top;
    private Ellipse _middle;
    private Ellipse _bottom;

public Snowman() {
        _top = new Ellipse();
        _top.setColor(Color.WHITE);
        _top.setFrameColor(Color.BLACK);
        _top.setFrameThickness(1);
        _top.setSize(80, 80);
        _middle = new Ellipse();
        _middle.setColor(Color.WHITE);
        _middle.setFrameColor(Color.BLACK);
        _middle.setFrameThickness(1);
        _middle.setSize(120, 120);
        _bottom = new Ellipse();
        _bottom.setColor(Color.WHITE);
        _bottom.setFrameColor(Color.BLACK);
        _bottom.setFrameThickness(1);
        _bottom.setSize(160, 160);
    }
} 

然而,在本课程教材中,实例变量不以下划线开头,而是遵循与基元类型变量相同的命名约定(
int-revolutionsMinute
)。当我在网上搜索时,我找到了几个来源,包括在线Javadoc,它们引用了与我的教科书相同的惯例。由于我无法复制我的老师遵循的命名惯例,我怀疑他的惯例是否合法。如果没有被广泛接受,我的老师教给我的惯例是否存在

类名和类型

第一个大写:
SomeClassName
URL
(缩写)

静态、实例变量和方法

驼峰案例:
这是驼峰案例

常数

所有大写:
A_常量

套餐


所有小写字母:
javax.swing.jfilechooser
类名和类型

第一个大写:
SomeClassName
URL
(缩写)

静态、实例变量和方法

驼峰案例:
这是驼峰案例

常数

所有大写:
A_常量

套餐


所有小写:
javax.swing.jfilechooser

我想说,在编写代码时,为了便于编写代码,您应该遵循约定。我不认为存在或不存在任何习俗。但是,您创建的类也可能被其他程序员使用。所以,如果他们不知道你遵循的惯例,他们可能会有问题。因此,建议您遵循大多数java程序员遵循的命名约定:

int myFirstNumber;
ClassName objectName;

因此,您可以选择约定,但我建议遵循javadoc和您的教科书中提到的标准。

为了便于编写代码,在编写代码时您可以遵循约定。我不认为存在或不存在任何习俗。但是,您创建的类也可能被其他程序员使用。所以,如果他们不知道你遵循的惯例,他们可能会有问题。因此,建议您遵循大多数java程序员遵循的命名约定:

int myFirstNumber;
ClassName objectName;

因此,由您选择约定,但我建议遵循javadoc和您的教科书中提到的标准。

通常,Java中的标准约定是驼峰大小写,其中变量以小写开头,其他单词的第一个字母以大写开头。例如:

int myVariable; 
int mySecondVariable;

但请注意,这些是约定,而不是规则。因此,任何人都可以自由使用任何约定,但建议使用标准约定使代码对任何人都可读。

通常,Java中的标准约定是驼峰大小写,其中变量以小写开头,其他单词的第一个字母以大写开头。例如:

int myVariable; 
int mySecondVariable;

但请注意,这些是约定,而不是规则。因此,任何人都可以自由使用任何约定,但建议使用标准约定,使代码对任何人都可读。

前导下划线没什么大不了的


只要它不是以大写字母开头——这将完全让java程序员感到困惑。

以下划线开头没什么大不了的


只要它不是以大写字母开头,java程序员就会完全困惑。

这完全取决于你或你的老板:)有几个惯例,你可能会使用自己的方言,这将是列表中的又一个。问问吧。你要找的是JLS。是的。正如我在帖子中提到的,我仔细查看了文档。我很好奇上述命名惯例是否存在。这完全取决于你或你的老板:)有几个惯例,你可能会使用自己的方言,这将是列表中的又一个。问吧。你要找的是JLS。是的。正如我在帖子中提到的,我仔细查看了文档。我很好奇上述命名约定是否存在。对于首字母缩略词,“官方”Java样式都是大写的,如果对于首字母缩略词,“官方”Java样式都是大写的,如果注意:[实例]变量名的约定往往比方法名和类名的约定“更宽松”。(也就是说,代码可以摆脱
int m_sillyConvention
远远超过它可以摆脱
void do_stuff()
class hurtzMahEyez
)注意:[instance]变量名的约定往往比方法名和类名的约定稍微“宽松”。(也就是说,代码可以摆脱
int m_sillyConvention
远远超过它可以摆脱
void do_stuff()
class hurtzMahEyez