Java标识符的命名规则
标识符的含义
标识符的含义是指在程序中,我们自己定义的内容;譬如,类的名字,方法名称以及变量名称等
等,都是标识符。
命名规则(硬性要求)
1、标识符可以包含英文字母,0-9的数字,美元符号以及下划线。
2、不能以数字开头。
3、标识符不能是关键字。
4、Java标识符大小写敏感,长度无限制。
命名规范(非硬性要求)
类名规范:
类名首字母必须大写,遵循驼峰(UpperCamelCase)命名规则,每个单词首字母必须也得大写,以下情形例外:DO / PO / DTO / BO / VO / UID 等。
正例:SysUser、UserDO、HtmlDTO、XmlService
反例:sysUser、UserDo、HTMLDto、XMLService
变量名规范:
变量名首字母小写,遵循驼峰(UpperCamelCase)命名规则,多个单词组成方法名,后面单词首字母大写。
正例:localValue、httpMessage、inputUserId
反例:LOCAL_VALUE、HttpMessage、inputuserid
方法名规范:
常量命名:
常量命名应该全部大写,单词间用下划线隔开,力求语义表达完整清楚,不要嫌名字长。
正例:MAX_STOCK_COUNT、CACHE_EXPIRED_TIME
反例:max_stock_count、Cache_Expired_Time
关键字
Java语言有51 + 2关键字,其中const和goto虽然被保留但未使用。你不能使用保留关键字来命名类、方法或变量。
1、数据类型关键字(10个)
关键字 | 含义 |
---|---|
boolean | 基本数据类型之一,声明布尔类型的关键字 |
int | 基本数据类型之一,声明整数类型的关键字 |
long | 基本数据类型之一,声明长整数类型的关键字 |
short | 基本数据类型之一,声明短整数类型的关键字 |
byte | 基本数据类型之一,声明字节类型的关键字 |
float | 基本数据类型之一,声明单精度浮点数类型的关键字 |
double | 基本数据类型之一,声明双精度浮点数类型的关键字 |
char | 基本数据类型之一,声明字符类型的关键字 |
class | 声明一个类 |
interface | 声明一个接口 |
record | record在定义数据类时更为简洁、易读和易用。 |
2、流程控制关键字(14个)
关键字 | 含义 |
---|---|
if | 条件语句的引导词 |
else | 用在条件语句中,表明当条件不成立时的分支 |
do | 用在do-while循环结构中 |
while | 用在循环结构中 |
for | 一种循环结构的引导词 |
switch | 分支语句结构的引导词 |
case | 用在switch语句之中,表示其中的一个分支 |
default | 默认,例如,用在switch语句中,表明一个默认的分支。Java8 中也作用于声明接口函数的默认实现 |
break | 提前跳出一个块 |
continue | 回到一个块的开始处 |
return | 从成员方法中返回数据 |
try | 尝试一个可能抛出异常的程序块 |
catch | 用在异常处理中,用来捕捉异常 |
finally | 用于处理异常情况,用来声明一个基本肯定会被执行到的语句块 |
3、修饰符关键字(13个)
关键字 | 含义 |
---|---|
public | 一种访问控制方式:共用模式 |
protected | 一种访问控制方式:保护模式 |
private | 一种访问控制方式:私用模式 |
final | 用来说明最终属性,表明一个类不能派生出子类,或者成员方法不能被覆盖,或者成员域的值不能被改变,用来定义常量 |
void | 声明当前成员方法没有返回值 |
static | 表明具有静态属性 |
strictfp | 用来声明FP_strict(单精度或双精度浮点数)表达式遵循IEEE 754算术规范 |
abstract | 表明类或者成员方法具有抽象属性 |
transient | 声明不用序列化的成员域 |
synchronized | 表明一段代码需要同步执行 |
volatile | 表明两个或者多个变量必须同步地发生变化 |
native | 用来声明一个方法是由与计算机相关的语言(如C/C++/FORTRAN语言)实现的 |
4、动作关键字(11个)
关键字 | 含义 |
---|---|
package | 包 |
import | 表明要访问指定的类或包 |
throw | 抛出一个异常 |
throws | 声明在当前定义的成员方法中所有需要抛出的异常 |
extends | 表明一个类型是另一个类型的子类型。对于类,可以是另一个类或者抽象类;对于接口,可以是另一个接口 |
implements | 表明一个类实现了给定的接口 |
this | 指向当前实例对象的引用 |
super | 表明当前对象的父类型的引用或者父类型的构造方法 |
instanceof | 用来测试一个对象是否是指定类型的实例对象 |
new | 用来创建新实例对象 |
assert | 断言,用来进行程序调试 |
5、值关键字(3个)
关键字 | 含义 |
---|---|
true | 真 |
false | 假 |
null | 空 |
6、保留关键字(2个)
关键字 | 含义 |
---|---|
goto | 保留关键字,没有具体含义 |
const | 保留关键字,没有具体含义 |