java的关键字有哪些:固定语法标识不可自定义使用

java的关键字有哪些:固定语法标识不可自定义使用

初学Java备考笔试的那段日子,最让我头疼的问题就是java的关键字有哪些,每次刷题碰到选择题,总能错漏几个冷门词汇,明明日常敲代码天天和关键字打交道,却从来没系统性梳理过完整的清单,总凭着模糊的认知做题,翻车次数多到数不清。

最开始的认知特别浅薄,只觉得平时写代码高频用到的if、else、for、while、public就是全部的Java关键字。日常做项目只靠这几个词支撑逻辑流转,从来没深究过还有其他专属词汇,甚至天真的以为Java关键字也就十几个,记熟常用的就足够应付所有开发和考试场景,完全忽略了语言底层固定的语法规范。

第一次翻车是在自定义变量命名的时候。

当时随手敲了一行代码,想用const当做变量名存储固定数值,编辑器直接整片爆红报错,反复检查标点、缩进、语法格式,折腾了快十分钟都找不到问题根源。代码逻辑完全没问题,拼写也没有失误,就是无法编译运行。那时候根本摸不着头脑,只觉得编译器太过苛刻,压根不知道const是Java预留的关键字,哪怕实战中几乎用不到,也绝对不能被用来自定义变量、方法、类名,这是没得商量的硬性规则。

后来才反应过来,Java关键字根本不是只有实操里常用的那一小部分,整套关键字清单是固定不变的,总计五十个,分属不同的语法功能类别,只是大部分冷门关键字很少出现在业务开发里,大多只存在笔试题目和底层源码逻辑中,这也是很多新手会忽略它们的核心原因。

慢慢通过刷题、改错、实操测试,一点点补齐了所有关键字的分类和具体词汇。访问修饰类包含public、private、protected、default,用来限定代码的访问权限;基础数据类型类覆盖byte、short、int、long、float、double、char、boolean,是Java定义数据的核心标识;流程控制类有if、else、switch、case、for、while、do、break、continue、return,支撑起所有代码的逻辑跳转和循环执行。

还有专门处理程序异常的try、catch、finally、throw、throws,负责类与对象定义、继承实现的class、interface、extends、implements、new、this、super、static、final、abstract、instanceof,用于线程同步和特殊修饰的synchronized、volatile、transient、strictfp、native,以及包管理相关的package、import,标识空值的null。最后还有两个永久保留、但目前废弃不用的const和goto,也是官方定义的关键字。

很多新手都会踩同一个误区,我当初也栽在这里,就是把true、false、null当成Java关键字。折腾好久才搞明白,这三个属于字面量,是固定的数值标识,不属于语法关键字,笔试多选里这是最高频的干扰项,我曾经因为这个细节丢了好几次分数。关键字是用来定义语法规则的专属词汇,而字面量是具体的数值内容,二者本质完全不一样。

整理完所有关键字的那天晚上,关掉笔记文档,随手新建了一个测试类,试着用goto命名方法,编辑器依旧弹出报错提示。盯着屏幕几秒,直接关掉了代码窗口。

了解更多百科知识请访问 百科