编程之基
从第一声 Hello World 到能组织一组协作对象,
沿着变量村的任务逐步掌握 Java。
离开开发者工坊后,你和阿花来到变量村。老陈交来一叠混乱的任务单:有些需要计算,有些需要判断,有些要让多个对象协作。你将在解决这些具体问题的过程中学习变量、控制流、方法、对象与集合,而不是只背语法表。
旅程位置:开发者工坊 → 变量村(把需求写成程序)→ 算法森林
前置要求
零基础可读(建议先完成第零卷)。无需编程经验。
第1章 你的第一个程序
安装 JDK、Hello World、public static void main 逐词拆解、编译运行流程。人生第一个 Java 程序。
第2章 变量与类型
变量的声明、初始化与作用域,8 种基本类型的边界,以及类型转换、精度和 final 约束。
第3章 表达式与操作符
算术/关系/逻辑/赋值操作符、短路特性、优先级、三元操作符、浮点数精度问题。
第4章 控制流
if-else、switch(含箭头语法)、for/while/do-while 循环、break/continue、嵌套循环。
第5章 方法与栈
方法定义与调用、参数与返回值、值传递、调用栈、方法重载、递归与栈溢出。
第5章+ 递归深入
树递归与重复计算、互递归、尾递归优化(三语言对比)、递归 vs 迭代、分治递归表达。
第6章 数组
数组声明创建、索引从0开始、遍历、length、Arrays 工具类、二维数组、常见操作。
第7章 面向对象(上):类与对象
类与对象、构造方法、this 关键字、static、封装、getter/setter、引用与 GC。
第8章 面向对象(下):继承与多态
extends、super、方法重写、多态、抽象类、接口(含 default 方法)、SOLID 原则简介。
第8章+ Lambda与高阶函数
函数式接口、Lambda 语法、方法引用、Stream API、Python/C++ Lambda对比、闭包与捕获。
第9章 字符串与常用工具类
String 不可变性、StringBuilder、Math/Random、包装类与自动装箱、枚举、Record、java.time。
第10章 核心集合
ArrayList、HashMap、HashSet、equals/hashCode、遍历与迭代。
第11章 异常处理
try-catch-finally、受检与非受检异常、自定义异常、try-with-resources。
第12章 泛型
类型参数、通配符与 PECS、类型擦除和运行时边界。
第13章 注解、反射与元编程
Java 注解、Spring 的基石、反射 API、运行时类型信息。
第14章 并发编程基础
进程与线程、线程安全、synchronized、volatile、线程池简介。
第15章 I/O 与文件
文件读写、字节流与字符流、NIO 简介、序列化。
本卷提供 17 个章节入口(含 2 篇加餐)。初学者从第 1 章顺序进入,已有经验的读者可按主题补缺。
完整课目
本卷按“章 → 编号课次”组织。8.1、8.2 这样的文件是第 8 章下连续的短课,不是两个重复章节。
第 1 章:Hello World,你的第一个程序
第 2 章:变量、赋值与作用域
第 3 章:表达式、赋值与求值顺序
第 4 章:if、else 与条件边界
第 5 章:为什么要有方法
- 5.1 为什么要有方法
- 5.2 方法声明与调用
- 5.3 参数、返回值与值传递
- 5.4 重载的 API 设计
- 5.5 调用栈、栈帧与栈轨迹
- 5.6 递归入门
- 5.7 递归的栈、重复计算与尾调用
- 5.8 方法、值传递与重载
第 6 章:数组——从变量到街区
第 7 章:(上):从平行数组到对象
- 7.1 (上):从平行数组到对象
- 7.2 (上):字段、方法与 this
- 7.3 (上):构造方法与对象不变量
- 7.4 (中):封装与访问边界
- 7.5 (中):静态成员与类级状态
- 7.6 (下):OOP 练习与常见陷阱
第 8 章:(上):继承与可替换关系
- 8.1 (上):继承与可替换关系
- 8.2 (中二):多态与动态分派
- 8.3 (中一):方法重写、@Override 与 super
- 8.4 (下):抽象类、接口与 Object
- 8.5 (实验室):继承、接口与多态
- 8.6 第8+章(上):Lambda 表达式——把行为装进信封
- 8.7 第8+章(中):Stream API——集合流水线
- 8.8 第8+章(实验室):Lambda 与 Stream 练习