Java零基础快速入门|标识符与关键字

本文章主要内容
标识符概述
标识符详解
关键字
什么是标识符?
标识符(identifier)是指用来标识某个实体的一个符号,在不同的应用环境下有不同的含义。在计算机编程语言中,标识符是用户编程时使用的名字,用于给变量、常量、函数、语句块等命名,以建立起名称与使用之间的关系。标识符通常由字母和数字以及其它字符构成。
在编程语言中,标识符就是程序员自己规定的代表一定含义的单词(java 源程序当中凡是程序员自己有权利修改的名字),比如类名,属性名,变量名等。如以下代码所示:

其中,Student 是一个类名,表示学生类;age 是一个属性名表示学生的年龄属性,setAge 是一个方法名,a 表示一个变量名。这些都是标识符。
标识符详解
1. 标识符都可以标识什么?
在 Java 源程序当中,标识符可以用来标识:
类名,例如:Student 学生类、User 用户类、Product 商品类、Order 订单类等。
接口名,例如:Runable 可运行的、Comparable 可比较的等。
变量名,例如:name 名字、age 年龄、birth 生日、length 长度等。
方法名,例如:login 登录、logout 登出、eat 吃、drink 喝等。
常量名,例如:LOGIN_SUCCESS、ACCESS_TOKEN 等。
除了标识以上之外,还可以标识其他的,这里就不再一一列举,大家主要先把以上的了解 一下。总之标识符就是起名字。
2. 标识符命名规则
标识符主要用来起名字,那么可以随便起名吗,有没有什么命名规则呢?
答案是:有的, 而且还得必须遵守,当编写源程序的时候如果标识符违背命名规则,编译时会报错。那么 java 中的标识符命名规则有哪些呢?请看以下规则:
① 标识符只能由数字、字母、下划线“_”、美元符号“$”组成,不能含有其它符号。
② 标识符不能以数字开始。
③ java 关键字和保留字不能作为标识符。
④ 标识符严格区分大小写。
⑤ 标识符理论上没有长度限制。
以上几点需要大家在以后不断的练习中进行掌握,不需要死记硬背。
3. 标识符命名规范
遵守了标识符的命名规则之后,一起来看一看标识符有没有相关的命名规范呢,命名规则和命名规范有何不同呢?
我在这里给大家解释一下,命名规则是一种语法上的要求,如果违背了,则表示语法错误,程序是无法正常编译的。而命名规范在一个团队中进 行协同开发时尤为重要,如果大家都按照统一的命名规范书写代码,那么代码看起来就会像是 同一个人编写的一样,能够很大程度上提高代码的可读性。换句话说,命名规范就是一个团队的编码约定。不过,当程序没能遵守命名规范的话,是不会影响程序的正常编译的。
那么 java 中标识符的命名规范有哪些呢?
请看以下通用的规范:
① 见名知意:看到这个单词就知道它表示什么,增强程序的可读性,例如:Student 则表 示学生类型,User 则表示用户类型;
② 遵循驼峰命名方式:可以很好的分隔单词,每个单词之间会划清界限,同样也是增强程序的可读性,例如:getName 则表示获取名字,UserService 则表示用户业务类;
③ 类名、接口名首字母大写,后面每个单词首字母大写,这是遵守驼峰命名方式的;
④ 变量名、方法名首字母小写,后面每个单词首字母大写,这也是遵守驼峰命名方式的;
⑤ 常量名全部大写,单词和单词之间使用“_”衔接,为了表示清楚含义,不要怕单词 长,例如:INT_MAX_VALUE 则表示 int 类型最大值。 以上的命名规范是大部分 java 开发团队通用的,但有一些团队可能要求更严格,和大家分享一段阿里巴巴的开发规约:

通过上图,我们可以看到阿里巴巴的开发规约更严格一些,比如第一条:代码中的命名均不能以下划线或美元符号开始,也不能以下划线或美元符号结束。另外还有“POJO 类中布尔类型的变量,都不要加 is,否则部分框架解析会引起序列化错误……”。
在实际的开发中,每个团队都有自己的开发规约,大家写代码的时候一定要遵守自己团队的开发规约。这样才能增强程序的可读性。
关键字
Java 关键字是编程语言里事先定义的,有特殊意义的单词,Java 中所有的关键字都是小写的英语单词。
Java 的关键字对Java 的编译器有特殊的意义,它们用来表示一种数据类型,或者表示程序的结构等,关键字不能用作标识符。常见的关键字有哪些呢?请看以下表格:

接下来,我们一起看一下每个关键字代表的大致含义,请看以下表格




以上关键字以及关键字的大致含义,大家目前先对其进行一个简单的了解,对于关键字不 需要去死记硬背,随着后面内容的学习,每一天的积累,不断的敲代码,慢慢的就掌握了。
接下来我们一起来看一下以下程序中有哪些单词是关键字,请看以下代码:

通过以上代码,我们可以看到其中public、class、static、void 为关键字。
难点解惑
之前我们在学习标识符的时候,其中有这样一条规则,那就是:标识符不能以数字开头。
大家一起来思考一个这样的问题:新建一个 java 文件,起名“123Test.java”这样可以吗?
接下来我们进行一个简单的测试,新建一个 123Test.java,打开文件,编写代码,定义类 T,如下图所示:

保存以上程序之后,进行编译,结果如下图所示:

我们可以看到123Test.java 文件编译通过了,并且生成了 T.class 字节码文件。我相信有些同学看到这里的时候会恍然大悟。这是为什么呢?这是因为123Test.java 中的“123Test”不是一个标识符,“123Test.java”只是一个普通的文件名而已。也就是说这里的“123Test”并不 是作为一个类名的形式出现的,它还不是一个类的名字。
那么接下来大家再继续思考另一个问题,以上的“123Test.java”文件中能够定义一个公开的类吗?
答案是:不能。这是为什么呢?因为我们之前学习过这样一条规则:公开的类的类名必须和Java 源文件名保持一致,换句话说,如果我们这里定义公开的类的话,类名必须是123Test,这就尴尬了,123Test 作为类名出现时,则是一个标识符,而标识符命名规则中规定不能以数字开始,所以是不能的。我们进行一个简单的测试,将以上123Test.java 文件中的代码全部删除,然后定义一个公开的类,起名 123Test,如下图所示:

接下来我们对以上程序进行编译,来看看会出现什么问题,请看下图:

通过以上的编译结果可以清楚的看到,“需要<标识符>”错误的出现,也就是说此时的123Test 不是一个合法的标识符。
通过本难点的学习,你是否能够掌握到 java 源文件的名字并不是类名,并且也不需要符合标识符的命名规则呢。
小结
本文章主要是带领大家一起来看看Java 程序的重要组成成分:标识符和关键字。
其中标识符中重点掌握标识符的命名规则,以及命名规范,养成一个良好的编写规范,能够大大提高程序的可读性。另外,还有当给出相关的标识符,能够很快的判断其合法性。
关键字这块重点要知道 Java 中的每一个关键字全部都是小写的英文单词,每个关键字都有特殊意义,并且不能拿关键字作为标识符。至于每个关键字所代表的含义,以及这个关键字如何编写,建议随着课程一边学习一边练习,然后一边再记忆。
最后附Java零基础视频教程给大家,配合学习效果更佳!!

