
2.2 标识符与关键字

程序本质上就是一个逻辑结构的综合体,在Java语言里面有不同的结构,例如,类、方法、变量结构等,那么对于不同的结构一定要有不同的说明。这些说明在程序中就被称为标识符,所以在进行标识符定义的时候一般都要求采用有意义的名称。
在Java中标识符定义的核心原则如下:由字母、数字、_、$所组成,其中不能使用数字开头,不能使用Java中的保留字(或者被称为“关键字”)。
提示:关于标识符的定义。
随着读者编程经验的累积,对于标识符的选择一般都会有自己的原则(或者遵从你所在公司的项目开发原则),所以对于标识符的使用,本书有以下建议。
在编写的时候尽量不要使用数字,例如,i1、i2。
命名尽量有意义,不要使用类似a、b简单标识符,而要使用Student、Math等单词,因为这类单词都属于有意义的内容。
Java中标识符是区分大小写的,例如,mldn、Mldn、MLDN表示3个不同的标识符。
“$”符号有特殊意义,不要使用(这些将在内部类中为读者讲解)。
一些刚接触编程语言的读者可能会觉得记住上面的规则很麻烦,所以最简单的理解就是,标识符最好用字母开头,而且尽量不要包含其他的符号。
为了帮助读者更好地理解标识符的定义,请看下面两组对比。
下面是合法的标识符:
mldn mldn_java li_mldn
下面是非法的标识符:
class(关键字) 67.9(数字开头和包含.) YOOTK LiXingHua(包含空格)
提示:可以利用中文定义标识符。
随着中国在国际地位的稳步提升以及中国软件市场的火爆发展,从JDK 1.7开始也增加了中文的支持,即标识符可以使用中文定义。
范例:利用中文定义标识符

此时类名称使用了中文,变量名称也使用了中文。尽管Java给予了中文很好的支持,但是本书强烈建议把这些特性当作一个小小的插曲就够了,实际开发中还是请按照习惯性的开发标准编写程序。
在定义标识符中另外一个重要的概念就是要避免使用关键字。所谓的关键字,指的就是具备有特殊含义的单词,例如,public、class、static等,这些都属于关键字。关键字全部使用小写字母的形式表示,在Java中可以使用的关键字如表2-1所示。
表2-1 Java中的关键字

续表

对于所有给出的关键字有几点需要注意。
Java有两个未使用到的关键字:goto(在其他语言中表示无条件跳转)、const(在其他语言中表示常量)。
JDK 1.4之后增加了assert关键字。
JDK 1.5之后增加了enum关键字。
Java有3个特殊含义的标记(严格来讲不算是关键字):true、false、null。
在JDK 1.10之后追加了var关键字,用于实现动态变量声明。
提示:不需要死记硬背Java中的关键字!
对于初学者而言,如果要全部记住以上关键字是一件比较麻烦的事,然而随着知识的熟练运用学过的知识会慢慢记住的,不用死记硬背!回顾一下前面的内容,会发现已经见过了以下的关键字:public、class、void、static等,因此对于一门编程语言,多加练习就是最好的学习方法。
对于表2-1中所给出的关键字,本书也帮读者做了一些简单的分类,有兴趣的读者可以在本书学习完毕后回来观看此总结信息。
访问控制:public、protected、private。
类、方法、变量修饰符:abstract、class、extends、final、implements、interface、native、new、static、strictfp、synchronized、transient、volatile、void、enum。
程序控制:break、continue、return、do、while、if、else、for、instanceof、switch、case、default。
异常处理:try、catch、throw、throws、final、assert。
包定义与使用:import、package。
基本类型:boolean、byte、char、double、float、int、long、short、null、true、false。
变量引用:super、this。
未使用到的关键字:goto、const。
而在JDK 1.9之后也提供有一些新的语法支持,例如,module、requires等不在受限范围内。