Java关键字是电脑语言里事先定义的,有特别意义的标识符,对Java的编译器有特殊的意义,它们用来表示一种数据类型,或者表示程序的结构等,关键字不能用作变量名、方法名、类名、包名和参数。
Java一共有53个关键字,包括2个保留关键字。
保留的关键字
关键字 | 含义 | 作用 |
---|
goto | 跳转 | 保留关键字,从未使用 |
const | 常量 | 保留关键字,从未使用 |
访问控制修饰符
关键字 | 含义 | 作用 |
---|
public | 公共的 | 可挎包(默认) |
protected | 受保护的 | 当前包可用、子类可跨包使用 |
private | 私有的 | 当前类可用 |
包相关
关键字 | 含义 | 作用 |
---|
package | 定义包 | 将所有有关的类放入一个包内方便查找与管理 |
import | 引入包 | 使用某个包中的某个类时,需要将包引入 |
类及实例化相关
关键字 | 含义 | 作用 |
---|
class | 类 | 定义一个类 |
abstract | 抽象类 | 定义一个抽象类,方法体可以实现也可以不实现 |
interface | 接口 | 定义一个接口,有方法体但没有实现 |
implements | 实现接口 | 继承一个接口并实现其中的方法体 |
extends | 继承 | 继承一个类 |
enum | 枚举类 | 相关常量的分组 |
new | 新建对象 | 建立某个类的实例化对象 |
数据类型
关键字 | 含义 | 作用 |
---|
byte | 字节型 | 8 bit |
short | 短整型 | 16 bit |
int | 整型 | 32 bit |
long | 长整型 | 64 bit |
float | 单精度浮点型 | 32 bit |
double | 双精度浮点型 | 64 bit |
char | 字符型 | 16 bit |
boolean | 布尔型 | true/false |
void | 无返回 | 没有返回值 |
null | 空值 | 不存在对象 |
布尔型的值
关键字 | 含义 | 作用 |
---|
true | 真 | 表示判断结果为真 |
false | 假 | 表示判断结果为假 |
条件循环
关键字 | 含义 | 作用 |
---|
break | 跳出循环 | 跳出最近的一个循环 |
continue | 继续 | 中断本次循环进行下一轮,而不是跳出 |
return | 返回 | 返回一个方法声明的返回类型的值 |
do | 运行 | 常与while 连用 |
while | 当 | 满足一定条件时 |
if | 如果 | 条件判断决定下一步行为 |
else | 否则 | 与if连用 |
for | 满足三个条件时 | 循环条件判断 |
instanceof | 实例 | 判断左边的实例是否是右边的类或类的子类实例 |
switch | 开关 | 选择判断,只可以接受int 、byte 、char 、short 值 |
case | 选择 | 根据switch 中的值进行选择 |
default | 默认 | 常与case 连用,没有符合条件的case 的时候执行 |
修饰方法、类、属性和变量
关键字 | 含义 | 作用 |
---|
final | 最终的 | 修饰类则其不能被继承;修饰方法则其不能被重写;修饰属性则其为常量 |
native | 原生的 | 声明该方法使用其他语言实现 |
static | 静态的 | 独立存在,不需实例化对象就可直接通过类名调用 |
strictfp | 精准的 | float 类型、double 类型严格遵守FP-strict的限制,符合IEEE-754规范 |
super | 父类的 | 调用父类的方法、属性时使用 |
this | 当前的 | 调用当前类的方法、属性时使用 |
transient | 短暂的 | 当序列化某个对象时,该对象中用transient修饰的字段的值不会被序列化 |
synchronized | 同步的 | 多用于线程同步 |
volatile | 易失的 | 具有synchronized 关键字的可见性特性,但是不具备原子性。 |
异常处理
关键字 | 含义 | 作用 |
---|
try | 捕获异常 | 捕获被包围的代码块中的异常 |
catch | 处理异常 | 与try 关键字连用,用于捕获异常之后的处理 |
finally | 最后 | 无论有没有异常都会执行,于try 关键字、catch 关键字连用 |
throw | 抛出异常 | 用于一条语句的异常处理 |
throws | 抛出异常 | 用于方法的异常处理 |
断言
关键字 | 含义 | 作用 |
---|
assert | 断言 | 方便debug,发布时也不用去除,需要添加虚拟机启动参数-ea |