Java标识符命名规则是什么(新手必看)
在 Java 编程语言中,标识符是用来标识变量、方法、类、包等各种元素的名称。标识符可以由字母、数字、下画线和美元符号组成,但必须遵循一定的命名规则和约定。
标识符不能是 Java 关键字(保留字,后续会讲),如 int、public、class 等。
标识符区分大写与小写,即 myVar 和 MyVar 被视为不同的标识符。
类名应该以大写字母开头,并采用驼峰命名法,如 Car、Person。
方法名、变量名、包名和类成员名应该以小写字母开头,并采用驼峰命名法,如 calculateInterest、myVariable。常量通常全部使用大写字母,单词之间用下画线分隔,如 MAX_VALUE、PI。
关键字在 Java 编程语言中具有特定的用途,不能用作标识符(变量名、方法名、类名等)。保留词是 Java 语言中预留的目前没有特定用途的单词。尽管这些单词目前没有被 Java 语言使用,但被保留下来,以防将来可能会用作关键字。
Java 中的关键字见下表:
Java 中的保留词有 goto 和 const。
为什么使用标识符
- 可读性和可维护性:使用有意义的、描述性的标识符可以增强代码的可读性,使其他开发人员更容易理解和维护代码。
- 约定俗成:Java社区有一套约定俗成的命名规则和惯例。
- 避免冲突和错误:选择合适的标识符可以避免命名冲突和错误。
- 提高代码的可维护性和可扩展性:选择良好的标识符可以使代码更易于维护和扩展。
- 符合Java语言规范:使用符合Java语言规范的标识符可以确保代码的可移植性和兼容性。
Java标识符的命名规范
良好的命名约定和选择合适的标识符可以使代码更具有可读性和可维护性。1) 命名规则
标识符必须以字母(a~z 或 A~Z)、下画线(_)或美元符号($)开头,后面可以跟随字母、数字(0~9)、下画线或美元符号。标识符不能是 Java 关键字(保留字,后续会讲),如 int、public、class 等。
标识符区分大写与小写,即 myVar 和 MyVar 被视为不同的标识符。
2) 命名约定
通常使用驼峰命名法来命名标识符,即除第一个单词外,其他单词的首字母大写,如 myVariable、calculateInterestRate。类名应该以大写字母开头,并采用驼峰命名法,如 Car、Person。
方法名、变量名、包名和类成员名应该以小写字母开头,并采用驼峰命名法,如 calculateInterest、myVariable。常量通常全部使用大写字母,单词之间用下画线分隔,如 MAX_VALUE、PI。
Java关键字和保留词
关键字是 Java 语言中预定义的具有特殊含义的单词,用于表示语言的语法结构和控制流程。关键字在 Java 编程语言中具有特定的用途,不能用作标识符(变量名、方法名、类名等)。保留词是 Java 语言中预留的目前没有特定用途的单词。尽管这些单词目前没有被 Java 语言使用,但被保留下来,以防将来可能会用作关键字。
Java 中的关键字见下表:
序号 | 关键字 | 用途 | 备注 |
---|---|---|---|
1 | abstract | 用于声明抽象类或抽象方法 | 不能实例化 |
2 | assert | 用于调试时的断言 | 默认关闭 |
3 | boolean | 布尔类型 | 只有 true 和 false 两个值 |
4 | break | 用于跳出循环或 switch 语句 | 终止当前循环或 switch |
5 | byte | 字节类型 | 8 位 |
6 | case | switch 语句中的条件分支 | 与 break 配合使用 |
7 | catch | 捕获异常 | 与 try 配合使用 |
8 | char | 字符类型 | 16 位 Unicode 字符 |
9 | class | 声明类 | 定义类结构 |
10 | const | 保留关键字 | Java 中使用 final 表示常量 |
11 | continue | 跳过当前循环的剩余部分,继续下一次循环 | 与循环配合使用 |
12 | default | switch 语句中的默认分支 | 当没有匹配的 case 时执行 |
13 | do | do-while 循环 | 至少执行一次循环体 |
14 | double | 双精度浮点类型 | 64 位 |
15 | else | if 语句中的条件分支 | 与 if 配合使用 |
16 | enum | 枚举类型 | 定义一组常量 |
17 | extends | 继承父类 | 用于类继承 |
18 | final | 用于声明常量、方法或类不能被覆盖或修改 | 常量、方法或类 |
19 | finally | 无论是否发生异常都会执行的代码块 | 与 try-catch 配合使用 |
20 | float | 单精度浮点类型 | 32 位 |
21 | for | for 循环 | 用于重复执行代码 |
22 | if | 条件语句 | 根据条件执行代码 |
23 | implements | 实现接口 | 用于类实现接口 |
24 | import | 导入类或包 | 用于导入外部类或包 |
25 | instanceof | 类型检查 | 检查对象是否是特定类的实例 |
26 | int | 整型 | 32 位 |
27 | interface | 声明接口 | 定义类可以实施的方法 |
28 | long | 长整型 | 64 位 |
29 | native | 声明本地方法 | 与本地代码接口 |
30 | new | 创建对象实例 | 用于对象实例化 |
31 | null | 空引用 | 表示没有引用任何对象 |
32 | package | 声明包 | 用于组织类 |
33 | private | 私有访问修饰符 | 只能在类内部访问 |
34 | protected | 受保护的访问修饰符 | 在包内或子类中可访问 |
35 | public | 公共访问修饰符 | 任何地方都可以访问 |
36 | return | 从方法返回值 | 结束方法执行 |
37 | short | 短整型 | 16 位 |
38 | static | 静态成员 | 属于类而不是实例 |
39 | strictfp | 严格浮点运算 | 保证浮点运算的精确性 |
40 | super | 引用父类成员 | 访问父类的方法和变量 |
41 | switch | 多分支选择语句 | 根据表达式的值执行不同的代码块 |
42 | synchronized | 同步方法或代码块 | 确保线程安全 |
43 | this | 引用当前对象 | 访问当前对象的成员 |
44 | throw | 抛出异常 | 引发异常 |
45 | throws | 声明方法可能抛出的异常 | 在方法签名中声明 |
46 | transient | 标记字段不需要序列化 | 序列化时忽略该字段 |
47 | try | 捕获异常的代码块 | 与 catch 和 finally 配合使用 |
48 | void | 无返回值类型 | 方法不返回任何值 |
49 | volatile | 标记变量为易变 | 确保变量的可见性 |
50 | while | while 循环 | 根据条件重复执行代码 |
Java 中的保留词有 goto 和 const。