Identifiers in Java

2025年3月29日 | 阅读 6 分钟

Java 编程中,标识符通过充当符号名称,帮助程序中的不同元素更容易被识别和使用。许多实体,包括类、变量、方法、包、常量等,都可以用这些标识符来表示。通过为这些元素命名有意义的名称,开发人员可以提高代码的可读性和可维护性。

在 Java 编程中,标识符至关重要,因为它们允许程序员有效地引用和修改程序部分。例如,类标识符唯一地标识一个类定义,以启用对象的创建和类方法的调用。同样,方法 ID 指定可执行的代码块,而变量标识符代表与数据值相关联的存储位置。

Java 中的标识符是用于标识的符号名称。它可以是类名、变量名、方法名、包名、常量名以及编程中使用的其他名称。但是,在 Java 中,有些保留字不能用作标识符。

对于每个标识符,在声明它们之前应使用一些约定。让我们通过一个简单的 Java 程序来理解它


Identifiers in Java

在上面的示例中,我们使用了以下标识符

  1. HelloJava(类名)
  2. main(主方法)
  3. String(预定义类名)
  4. args(字符串变量)
  5. System(预定义类)
  6. out(变量名)
  7. println(方法)

标识符的重要性

  1. 程序结构:类、变量、方法、包等都是由标识符命名的,标识符是 Java 程序的基石。
  2. 可读性和理解性:当精心选择的标识符提高代码的可读性和理解性时,开发人员可以更容易地理解各个程序组件的功能和目标。
  3. 可修改性:通过提供引用和修改程序元素的简单方法,标识符有助于代码的维护和更改。
  4. 沟通:标识符允许开发人员通过共享有关某些程序部分的功能和能力的信息来相互沟通。

让我们来理解 Java 标识符的规则。

Java 标识符的规则

在 Java 中声明标识符有一些规则和约定。如果标识符声明不当,我们可能会收到编译时错误。以下是声明标识符的一些规则和约定

  • 有效的标识符必须包含字符 [A-Z] 或 [a-z] 或数字 [0-9],以及下划线 (_) 或美元符号 ($)。例如,@javatpoint 不是一个有效的标识符,因为它包含特殊字符 @。
  • 标识符中不应有空格。例如,java tpoint 是一个无效的标识符。
  • 标识符的开头不应包含数字。例如,123javatpoint 是一个无效的标识符。
  • 标识符的长度应仅为 4-15 个字母。但是,其长度没有限制。但是,最好遵循标准约定。
  • 我们不能使用 Java 保留关键字作为标识符,如 int、float、double、char 等。例如,int double 在 Java 中是无效标识符。
  • 标识符不能是任何查询语言关键字,如 SELECT、FROM、COUNT、DELETE 等。

命名约定

  • 类:类名应以大写字母开头,并遵循 CamelCase 约定。例如,MyClass。
  • 变量:变量名应以小写字母开头,并遵循 camelCase 约定。例如,myVariable。
  • 方法:方法名应以小写字母开头,并遵循 camelCase 约定。例如,myMethod。
  • 常量:常量应全部大写,单词之间用下划线分隔。例如,PI_VALUE。
  • 包:包名应为小写字母,并遵循反向域名约定。例如,com.example.package。

Java 保留关键字

Java 保留关键字是预定义的词,它们被保留用于任何功能或含义。我们不能将这些关键字用作我们的标识符名称,例如类名或方法名。这些关键字由 Java 的语法用于某些功能。如果我们使用保留字作为变量名,它将抛出错误。

在 Java 中,每个保留字都有独特的含义和功能。

考虑以下语法

在上面的语句中,double 是一个保留字,而 marks 是一个有效的标识符。

下表列出了 Java 中的保留关键字

abstractcontinueforprotectedtransient
assertdefaultgotopublictry
booleandoifstaticthrows
breakdoubleimplementsstrictfppackage
byteelseimportsuperprivate
caseenuminterfaceshortswitch
catchextendsinstanceOfreturnvoid
charfinalintsynchronizedvolatile
classfinallylongthrowdate
constfloatnativethiswhile

虽然 const 和 goto 不是 Java 语言的一部分;但是,它们也被认为是关键字。

有效和无效标识符示例

有效的标识符

以下是一些 Java 中有效标识符的示例

  • TestVariable
  • testvariable
  • a
  • i
  • Test_Variable
  • _testvariable
  • $testvariable
  • sum_of_array
  • TESTVARIABLE
  • jtp123
  • JavaTpoint
  • Javatpoint123

无效标识符

以下是一些无效标识符的示例

  • Test Variable(标识符中不能包含空格)
  • 123javatpoint(标识符不应以数字开头)
  • java+tpoint(不能使用加号(+)符号)
  • a-javatpoint(不允许使用连字符符号)
  • java_&_Tpoint(不允许使用与号(&)符号)
  • Java'tpoint(标识符中不能使用撇号符号)

我们在声明标识符时应该遵循一些命名约定。但是,Java 编程语言并不强制遵循这些约定。这就是为什么它们被称为约定而不是规则。但最好遵循它们。这些是一些行业标准,并得到了 Oracle 和 Netscape 等 Java 社区的推荐。

如果我们不遵循这些约定,可能会导致混淆或代码错误。

命名约定的作用

  1. 标准化:命名约定为标识符命名建立了标准实践,促进代码库的一致性和统一性。
  2. 清晰度和可读性:通过遵循命名约定,开发人员可以提高代码的清晰度和可读性,使其更容易理解和维护。
  3. 社区标准:命名约定通常基于行业最佳实践和社区标准,确保代码以其他开发人员熟悉的方式编写。

文件名:IdentifierExample.java

输出

Hello, world!
Value of PI: 3.14159

解释

类名 CamelCase 风格由类 IdentifierExample 演示。在其中,常量 PI_VALUE 使用所有大写字母和下划线分隔单词,以符合常量约定。

程序入口点 main 方法以 Java 程序所需的签名声明。在 main 中声明了一个名为 camelCase约定的变量 MyVariable。IdentifierExample 对象的生成遵循与变量名相同的约定;IdentifierExample 的实例由 exampleObject 表示。

调用方法时也使用了 camelCase 约定,如 exampleObject.printMessage("Hello, world!") 所示。

最后,程序遵循常量使用规范,并使用 System.out.println() 输出常量 PI_VALUE 的值。

结论

总而言之,Java 标识符充当变量、类、方法、包、常量等各种程序组件的符号名称。它们对于使这些组件在 Java 程序中更易于识别和使用至关重要。通过遵循标准的命名约定和最佳实践,开发人员可以提高代码的可读性、可维护性和团队协作能力。

在本次讨论中,我们涵盖了 Java 编程中标识符的重要性,强调了它们如何帮助组织代码、增强理解力并促进有效的开发人员沟通。我们还涵盖了与标识符命名相关的指导方针和约定,强调了在避免使用保留词并遵循公认的命名实践的同时,选择一致、有意义的名称的重要性。