01. 开篇词 | 拥抱Java新特性,像设计者一样工作和思考.html
02. 01 | JShell:怎么快速验证简单的小问题?.html
03. 02 | 文字块:怎么编写所见即所得的字符串?.html
04. 03 | 档案类:怎么精简地表达不可变数据?.html
05. 04 | 封闭类:怎么刹住失控的扩展性?.html
06. 05 | 类型匹配:怎么切除臃肿的强制转换?.html
07. 06 | switch表达式:怎么简化多情景操作?.html
08. 07 | switch匹配:能不能适配不同的类型?.html
09. 08 | 抛出异常,是不是错误处理的第一选择?.html
10. 09 | 异常恢复,付出的代价能不能少一点?.html
11. 10 | Flow,是异步编程的终极选择吗?.html
12. 11 | 矢量运算:Java的机器学习要来了吗?.html
13. 12 | 外部内存接口:零拷贝的障碍还有多少?.html
14. 13 | 外部函数接口,能不能取代Java本地接口?.html
15. 14 | 禁止空指针,该怎么避免崩溃的空指针?.html
16. 15 | 现代密码:你用的加密算法过时了吗?.html
17. 16 | 改进的废弃,怎么避免使用废弃的特性?.html
18. 17 | 模块系统:为什么Java需要模块化?.html
19. 18 | 模块系统:怎么模块化你的应用程序?.html
20. 期末测试|来赴一场满分之约!.html
21. 结束语 | Java的未来,依然是星辰大海.html
22. 用户故事 | 保持好奇心,积极拥抱变化.html
23. 用户故事 | 与新特性开发者对话.html