1.7 本章小结
第一章没有让你学会"写 Java",但让你具备了学 Java 的全部条件:知道它是什么、环境能跑、亲手跑通过一次、讲得清背后的机制、工具已就位。本节是复习课,把 6 节拧成一股绳。
1. 六节串成的一条线(复述一遍)
1.1 是什么:Java = 先编译成字节码 + 各平台 JVM 解释执行 → 跨平台
1.2 装环境:JDK 17(含 javac 编译器 + JVM)+ JAVA_HOME/Path 两个环境变量
1.3 跑程序:手写 HelloWorld.java → javac 编译出 .class → java 运行 → 屏幕出字
1.4 懂机制:JVM 四站(类加载→校验→解释器+JIT→内存区),GC 自动倒垃圾
1.5 配工具:IDEA 社区版,绿三角 ▶ 一键替代手动四步
1.6 上外挂:通义灵码——讲解员和陪练,看懂再采纳,关掉能独立写才算会
毕业标准只有一条:能不看笔记,向别人讲清一个 Java 程序从"写代码"到"屏幕显示"的完整旅程——
HelloWorld.java →(javac)→ HelloWorld.class →(JVM 类加载/校验/解释+JIT)→ 机器码 → CPU 执行 main → println 输出。
2. 核心概念速查表(考前 3 分钟版)
| 概念 | 一句话定义 | 出处 |
|---|---|---|
| JDK | Java 开发工具包 = 编译器 javac + JRE,写代码必须装 | 1.1 / 1.2 |
| JRE | Java 运行环境 = JVM + 核心类库,只跑不写装它就够 | 1.1 / 1.4 |
| JVM | Java 虚拟机,"随身翻译官",把字节码翻成各平台机器码 | 1.1 / 1.4 |
| 字节码 | .class 文件里的内容,JVM 专属中间语,平台无关 | 1.1 / 1.4 |
| 跨平台 | 一次编译,到处运行——靠的是字节码 + 各平台各装一个 JVM | 1.1 / 1.4 |
| JAVA_HOME | JDK 安装目录的别名环境变量,Path 和其他软件都认它 | 1.2 |
| Path | Windows 的"程序花名册",cmd 敲命令按它找 .exe | 1.2 |
| main 方法 | 程序唯一入口,CPU 执行的起点 | 1.3 |
| JIT | 即时编译器,把反复执行的热点字节码编译成机器码缓存 | 1.4 |
| GC | 垃圾回收器,自动回收堆里失去引用的对象 | 1.4 |
| IDEA | JetBrains 出的 IDE(社区版免费),机械活自动化 | 1.5 |
| psvm / sout | IDEA 代码模板:main 方法 / System.out.println | 1.5 |
| 通义灵码 | 阿里免费 AI 编程助手,补全+讲解+问答 | 1.6 |
3. 命令与操作速查
java -version / javac -version 验证 JDK(看到 17 即成功)
cd /d I:\JavaCode\day01 cmd 切换目录(跨盘要 /d)
javac HelloWorld.java 编译(成功 = 没消息 + 多出 .class)
java HelloWorld 运行(跟类名,不带 .class)
javac -encoding UTF-8 xxx.java 源码含中文时的编译姿势
psvm + Tab / sout + Tab IDEA 快速生成 main / 输出语句
▶ 绿色三角 IDEA 一键编译运行
4. 本章踩过的坑(复习专用)
.java.txt:不显示扩展名导致文件名造假(解法:资源管理器勾选"文件扩展名")——1.3编码GBK的不可映射字符:记事本 UTF-8 vs javac 默认 GBK(解法:-encoding UTF-8)——1.3'javac' 不是内部或外部命令:环境变量没配好或没重开 cmd(90% 是后者)——1.2- 中文标点:
;""当; ""用,编译器全不认——1.3 - 改了源码没重新编译:跑的还是旧字节码("我明明改了"综合症)——1.3
5. 毕业自检清单
JDK ⊃ JRE ⊃ JVM。JVM 干翻译执行;JRE = JVM + 类库(够跑);JDK = JRE + 编译器等开发工具(够写)。写代码装 JDK。
字节码平台无关,面向 JVM 而不是 CPU;Linux 装了 JVM 就能翻译执行。C 的 .exe 就不行——它已经是 Windows 机器码。
public(公开的,谁都能调)、static(不用创建对象,类级别——第五章细讲)、void(不返回任何东西)、main(入口的名字,固定)、String[] args(命令行传进来的参数,先当摆设)。认识一半以上合格,全部搞懂要等第五章。
都不是/都是——先编译成字节码,再由 JVM 解释执行的混合机制,配合 JIT 即时编译,越跑越快。这是面试高频题。
装 JDK 17(勾 JAVA_HOME)→ 配/验证 Path → cmd 敲 java -version 验证 → 写 HelloWorld.java(类名=文件名、英文标点)→ javac 编译 → java 运行。默写得出来,第一章就真毕业了。
6. 通向第二章
第一章解决"工具就位、原理打通";第二章开始解决"会写":
第二章 变量与数据类型 → 程序终于能"记住"东西了
├─ 变量:给内存里的格子贴标签(连 1.4 的"堆/栈")
├─ 八种基本类型:int、double、boolean……各占几格、各装什么
└─ 类型转换:大杯倒小杯会洒(精度丢失)
正文 → 动手 → 自测题先答再展开。从第二章起,每节课后练习都在 IDEA 里做(1.5 的投资开始回本),卡壳先用 AI 讲解员(1.6),再回来问我。
7. 相关笔记
- 第一章全六节:1.1 · 1.2 · 1.3 · 1.4 · 1.5 · 1.6
- 🔵 计算机基础 · 索引(05/06/07 三篇是本章的地基)
- ☕ Java基础 · 索引
- 🏠 返回主页