1. 书籍定位与适用读者
《Java Cookbook》是一本面向已有 Java 基础、希望迅速掌握最新标准库及开发实践的“菜谱式”技术书。
- 不教语法:默认你已了解类、接口、泛型等基础概念。
- 场景导向:每节以“问题 → 解决方案 → 讨论”三步展开,可直接复制代码到项目。
- 版本聚焦:示例默认在 Java 21 LTS 上验证,同时指出需 Java 22+ 的预览特性。
2. 内容总览
全书 18 章 + 附录,按技术深度递进:
| 范畴 | 覆盖重点 | 
| 环境&工具 | JDK/JShell/IDE/Maven/Gradle/CI/模块系统 | 
| 核心 API | 字符串、正则、数值、日期时间、集合、I/O | 
| 现代特性 | Lambda、Stream、Optional、Sealed Class、Record | 
| 并发&性能 | 线程、并行 Stream、Vector API、JMH、GraalVM | 
| 生态集成 | JSON、REST、数据库、日志、测试、Mock、DI、打包 | 
| 前沿应用 | 机器学习/AI、数据科学(Spark、R)、原生镜像 | 
3. 新版亮点
- 全面更新:移除 Swing、AWT、Applet 等过时章节;新增 Vector API、Stream Gatherer、jlink、jpackage、Data-Oriented Programming 等 Java 21-22 特性。
- 多版本兼容:示范 multi-release JAR,让同一份代码在旧 JDK 上运行新特性。
- 云原生友好:涵盖模块化、容器化、微服务打包、CI/CD(GitHub Actions/Jenkins)。
4. 章节目录精要
- 起步:JDK 安装、JShell 交互、IDE/Maven/Gradle 快速上手。
- 构建与测试:模块系统、依赖管理、JUnit5、Mockito、持续集成。
- 字符串与正则:文本拆分、格式化、国际化、正则高级技巧。
- 数值处理:BigInteger/BigDecimal、格式化、随机数、矩阵运算。
- 日期时间:Java 8 时间 API 全攻略,时区、周期、与旧 Date 互转。
- 数据结构:数组、集合框架、泛型、不可变集合、自定义迭代器。
- 面向对象:Record、Sealed Class、接口默认方法、Singleton、DI。
- 函数式编程:Lambda、Stream、Collector、并行流、方法引用、Optional。
- 输入输出:NIO.2 Path/Files、序列化、压缩、目录监听、内存映射。
- 并发:线程、Executor、ForkJoin、锁、并发集合、虚拟线程预览。
- 网络与 Web:HTTP Client、REST、JSON 处理、WebSocket。
- 数据科学:Apache Spark、与 R 交互、Java ML 库实战。
- 原生与互操作:GraalVM native-image、JNA、调用 C/C++、其他 JVM 语言。
5. 代码与资源
- 开源仓库:所有示例托管 GitHub(javasrc, darwinsys-api),支持 Maven/Gradle 一键运行。
- 在线补充:书中长代码、删除章节、勘误表均放在作者官网,随时更新。
6. 阅读建议
- 快速查用:按目录或索引直接跳到所需“菜谱”。
- 系统学习:按章节顺序通读,可完整掌握从构建到部署的现代 Java 技术栈。
- 举一反三:每节“讨论”部分给出扩展思路与官方文档链接,方便深入。
7. 一句话总结
《Java Cookbook(第5版)》是一部紧跟 Java 21-24、覆盖语言核心到云原生生态的“随身工具书”,让开发者在最短时间写出可维护、高性能、面向未来的 Java 应用。