目标:
1、掌握什么是关键字
2、掌握什么是保留字
3、掌握面试常见问题
主要内容
关键字:
是对编译器有特殊含义的字段,是保留给编译器识别的。
保留字:
由于Java是从C语言发展过来的,在C语言中有个关键字虽然当前没有使用,但是在以后可能会被使用,暂时下“保留”了下来,所以称之为保留字。
注意:保留字也是关键字
根据Oracle官方,关键字列表如下:
abstract | continue | for | new | switch |
assert | default | goto | package | synchronized |
boolean | do | if | private | this |
break | double | implements | protected | throw |
byte | else | import | public | throws |
case | enum | instanceof | return | transient |
catch | extends | int | short | try |
char | final | interface | static | void |
class | finally | long | strictfp | volatile |
const * | float | native | super | while |
注意:
有个书上把true,false,null也说做是关键字。可是在上述的列表中是没有的,一起来看看来自Oracle的官方解释:true, false
, and null
might seem like keywords, but they are actually literals。也就是说,true,false,null不是关键字。
强调:在有存在争议的知识点时,应该以官方规范为准,大家可以去Oracle官方去查找相关资料。
面试常见问题:
1、protect是否是关键字? //答案:不是,protected是关键字
2、true,false,null是不是关键字? //答案:不是,三者相当于常量
3、goto是不是关键字? //答案:是关键字,既是保留字也是关键字