本文最后更新于4 天前,其中的信息可能已经过时,如有错误请发送邮件到1464396208@qq.com
## Java 关键字(Keyword)概念拆解 ### 什么是关键字 关键字是 Java 语言**预先定义**、具有**固定特殊含义**的英文单词,全部由**小写字母**组成。编译器遇到它们时,会识别为特定语法结构的一部分,而不会当作普通的变量名或方法名来处理。 关键字有三大特征: 1. **小写**——`class` 是关键字,而 `Class` 不是(它是类名,首字母大写)。 2. **不能用作标识符**——你无法给变量、方法或类起名为 `int`、`void`、`for` 等,否则编译直接报错。 3. **含义固定**——每个关键字的意义由语言规范决定,无法重定义或覆盖。 用流程图概括关键字在 Java 语法体系中的位置: ```mermaid flowchart LR A[Java 源程序] --> B[关键字 Keyword] A --> C[标识符 Identifier] A --> D[字面量 Literal] A --> E[运算符 Operator] B --> F[构成语法结构骨架] C --> F D --> F E --> F F --> G[编译器解析并生成字节码] ```
一、class:类的声明关键字
主题内容
class 是 Java 中最核心的关键字,用于声明一个类。类是 Java 程序的基本组织单位,所有代码都必须写在某个类当中。
核心概念
- 语法:
[修饰符] class 类名 { 类体 } - 类名与文件名:用
public修饰的类,其类名必须与源文件名完全一致(如HelloWorld.java中只能有一个public class HelloWorld)。
工作原理
class告诉编译器”这是一个类的定义”。- 编译后,一个
.java文件中的类会生成对应的.class字节码文件(内部类会生成额外的.class文件)。 - JVM 通过类名加载字节码并执行其中的
main方法作为程序入口。
示例
// public 修饰的类,类名必须与文件名一致(HelloWorld.java)
public class HelloWorld {
// 程序入口方法
public static void main(String[] args) {
System.out.println("HelloWorld");
}
}
⚠️ 注意事项:一个
.java文件里可以有多个类,但只能有一个public修饰的类,且它必须与文件名同名。
二、修饰类与成员的关键字
public / protected / private(访问控制)
| 关键字 | 访问范围 | 常见用途 |
|---|---|---|
public | 任何位置均可访问 | 类、方法、字段对外公开 |
protected | 同包 + 子类可访问 | 供继承体系内部使用 |
private | 仅本类内部可访问 | 封装字段、私有方法 |
static(静态)
static 修饰的成员属于类本身,而非某个具体对象,通过 类名.成员 访问,无需创建实例。
public class Counter {
public static int count = 0; // 静态变量,所有实例共享
public static void reset() { // 静态方法
count = 0;
}
}
final(最终)
- 修饰变量:常量,赋值后不可更改。
- 修饰方法:不可被子类重写。
- 修饰类:不可被继承。
abstract(抽象)
- 修饰类:抽象类,不能实例化,只能被继承。
- 修饰方法:抽象方法,只有声明没有方法体,由子类实现。
三、方法相关关键字
void 是方法返回类型关键字,表示该方法不返回任何值。与之相对的,方法可返回 int、double、String 等具体类型。
public class Example {
public static void printHello() { // 无返回值
System.out.println("Hello");
}
public static int add(int a, int b) { // 返回 int 类型
return a + b; // return 关键字用于返回结果
}
}
return 的作用有两层:返回结果,并立即结束方法执行。
四、基本数据类型关键字
Java 的八种基本数据类型,其”类型名”本身就是关键字:
| 类型 | 关键字 | 默认值 | 说明 |
|---|---|---|---|
| 整型 | byte / short / int / long | 0 | 分别占 1/2/4/8 字节 |
| 浮点型 | float / double | 0.0 | 单精度 / 双精度 |
| 字符型 | char | \u0000 | 单个字符 |
| 布尔型 | boolean | false | 只有 true / false |
⚠️ 注意:
true、false、null严格来说不是关键字,而是字面量(literal),但它们同样不能用作标识符(变量名、类名等),初学者常在此混淆。
五、流程控制关键字
用于控制程序执行顺序,是逻辑结构的基础:
| 分类 | 关键字 |
|---|---|
| 条件判断 | if、else、switch、case、default |
| 循环 | for、while、do |
| 跳转 | break、continue、return |
for (int i = 0; i < 5; i++) {
if (i == 2) {
continue; // 跳过本次循环
}
if (i == 4) {
break; // 终止整个循环
}
System.out.println(i);
}
六、其他常用关键字速览
| 关键字 | 作用 |
|---|---|
new | 创建对象实例 |
this | 引用当前对象 |
super | 引用父类成员 |
package | 声明包(命名空间) |
import | 导入其他包中的类 |
extends | 类的继承 |
implements | 接口的实现 |
interface | 声明接口 |
try / catch / finally | 异常处理 |
throw / throws | 抛出 / 声明异常 |
instanceof | 判断对象是否属于某类型 |
enum | 声明枚举 |
总结
关键字关系图

核心要点速记
| 概念 | 一句话总结 |
|---|---|
| 关键字 | Java 预定义、小写、有固定含义、不能作标识符 |
class | 声明类,public 类的类名必须与文件名一致 |
public | 最大访问权限,任何位置可见 |
static | 成员属于类本身,通过类名直接访问 |
void | 方法无返回值 |
final | 表示”最终”,修饰变量/方法/类 |
abstract | 抽象,需子类实现 |
| 基本类型关键字 | int、double、char、boolean 等八个类型名 |
| true/false/null | 字面量非关键字,但也不能用作标识符 |


