关键字和保留字
阅读本篇文章你可以解决如下问题
- 什么是关键字
- 什么是保留字
- 关键字有哪些
- 保留字有哪些
- true、false、null到底是不是关键字
关键字(key word)
定义:被Java语言赋予了特殊含义,用作特殊用途的字符串(单词)
特点:关键字中所有字母均为小写
注意:关键字和保留字均不能用作变量名、方法名、类名、包名和参数
用于定义数字类型的关键字:
int | byte | short | long | double |
---|---|---|---|---|
char | float | boolean | class | void |
enum | interface |
用于定义流程控制类型的关键字:
if | else | switch | case | default |
---|---|---|---|---|
do | while | for | break | continue |
return |
用于定义访问修饰符的关键字:
public | private | protected | ||
---|---|---|---|---|
用于定义类,函数,变量修饰符的关键字:
abstract | final | static | ||
---|---|---|---|---|
用于定义类与类之间的关键字:
extends | implement | |||
---|---|---|---|---|
用于定义建立实例及引用实例,判断实例的关键字:
new | this | super | instanceof | |
---|---|---|---|---|
用于处理异常的关键字:
try | catch | finally | throw | throws |
---|---|---|---|---|
用于包的关键字:
package | import | |||
---|---|---|---|---|
其他修饰符关键字:
native | strictfp | transient | volatile | assert |
---|---|---|---|---|
这里要特别注意一下,true、false、null严格意义上讲这三个并不是关键字,但是这三个可以当关键字使用,我们命名的时候也要避开这三个
这里我们参考一下orcale的官方文档,我这里查看的是SE8的文档
这里文档很明确的说了虽然true并且false可能看起来是关键字,但它们在技术上是布尔文字。虽然null可能看起来是关键字,但从技术上讲,它是空字面量。
官方对它们有明确的定义,所以它们并不是关键字,但是我们使用的时候当做关键字就可以了
具体这些关键字有什么作用,我觉得这个不是很重要,如有需要可以查看suveng这个博主的一篇文章
https://blog.csdn.net/qq_37933685/article/details/81282182
保留字(reserved word)
Java的保留字指的是现有Java版本尚未使用,但以后版本可能会作为关键字使用的字符串(单词)
和关键字一样命名标识符时要避免使用这些保留字
保留字目前只有两个goto和const,上面官方文档的截图第一句话就说明了
本篇文章参考文献
- Orcale官网的Java Language Specification