"Exploring Java 9 - 2018年" 本书深入探讨了Java 9中的新特性和变化,特别关注了模块系统——即Java平台模块系统(JPMS)或Project Jigsaw。该书涵盖了整个Java应用程序开发生命周期的重要概念,旨在帮助读者构建模块化的应用程序。书中详细介绍了以下关键知识点: 1. **模块系统(JPMS)**:Java 9引入了模块化,以解决大型应用的依赖管理和代码隔离问题。JPMS通过定义清晰的模块边界,提高了程序的可维护性和安全性。 2. **模块描述符(Module Descriptor)**:每个模块都有一个模块描述符,通常在`module-info.java`文件中定义。它声明了模块的名称、依赖和其他模块化信息,如导出和打开的包。 3. **未命名模块(Unnamed Module)**:未命名模块是指那些没有明确模块描述符的模块,通常包括传统Java类路径下的JAR和类文件。 4. **自动模块(Automatic Modules)**:对于那些不能明确声明模块描述符的库,Java 9会尝试将其识别为自动模块。自动模块的命名基于JAR文件的名称,并且可能需要手动调整来确保正确引用。 5. **命令行工具**:Java 9引入了一些新的命令行工具,如`jlink`用于创建定制的运行时映像,`jmod`用于创建和管理模块文件,以及`jdeps`用于分析依赖关系。 6. **接口私有方法(Private Interface Methods)**:Java 9允许在接口中定义私有方法,增强了接口的功能,使得它们可以作为默认方法实现的内部逻辑。 7. **反应式流API(Reactive Streams)**:Java 9通过`java.util.concurrent.Flow`包提供了对反应式流规范的支持,这是为异步编程和高并发场景设计的一组接口。 8. **JShell(也称为REPL,Read-Eval-Print Loop)**:这是一个新的命令行工具,允许开发者即时测试和调试Java代码片段,极大地提高了开发效率。 9. **HTTP客户端API(HTTP Client API)**:Java 9引入了一个新的内置HTTP客户端API(`java.net.http.HttpClient`),提供了一种简单且高效的HTTP/2和HTTP/1.1支持。 10. **多版本兼容JAR(Multi-Release JARs)**:这种新特性允许JAR文件包含针对不同Java版本的代码,使得库开发者可以利用新版本的特性,同时保持向后兼容。 11. **进程API增强**:Java 9改进了进程API,提供了更强大的子进程控制能力,如进程输入输出重定向和管道。 通过学习这些核心概念,开发者能够充分利用Java 9的新功能,提高代码的组织性和效率,同时更好地适应现代软件开发的需求。无论是新手还是经验丰富的Java开发者,这本书都提供了一个全面了解和掌握Java 9新特性的宝贵资源。
![](https://csdnimg.cn/release/download_crawler_static/10292718/bg10.jpg)
![](https://csdnimg.cn/release/download_crawler_static/10292718/bg11.jpg)
![](https://csdnimg.cn/release/download_crawler_static/10292718/bg12.jpg)
![](https://csdnimg.cn/release/download_crawler_static/10292718/bg13.jpg)
![](https://csdnimg.cn/release/download_crawler_static/10292718/bg14.jpg)
剩余178页未读,继续阅读
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![.zip](https://img-home.csdnimg.cn/images/20210720083646.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![epub](https://img-home.csdnimg.cn/images/20210720083646.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![docx](https://img-home.csdnimg.cn/images/20210720083331.png)
![](https://profile-avatar.csdnimg.cn/6f796f81c14c4ae1a4232cbce2434aaa_kxg1005.jpg!1)
- 粉丝: 10
- 资源: 166
我的内容管理 展开
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助
![](https://csdnimg.cn/release/wenkucmsfe/public/img/voice.245cc511.png)
最新资源
- 构建Cadence PSpice仿真模型库教程
- VMware 10.0安装指南:步骤详解与网络、文件共享解决方案
- 中国互联网20周年必读:影响行业的100本经典书籍
- SQL Server 2000 Analysis Services的经典MDX查询示例
- VC6.0 MFC操作Excel教程:亲测Win7下的应用与保存技巧
- 使用Python NetworkX处理网络图
- 科技驱动:计算机控制技术的革新与应用
- MF-1型机器人硬件与robobasic编程详解
- ADC性能指标解析:超越位数、SNR和谐波
- 通用示波器改造为逻辑分析仪:0-1字符显示与电路设计
- C++实现TCP控制台客户端
- SOA架构下ESB在卷烟厂的信息整合与决策支持
- 三维人脸识别:技术进展与应用解析
- 单张人脸图像的眼镜边框自动去除方法
- C语言绘制图形:余弦曲线与正弦函数示例
- Matlab 文件操作入门:fopen、fclose、fprintf、fscanf 等函数使用详解
![](https://img-home.csdnimg.cn/images/20220527035711.png)
![](https://img-home.csdnimg.cn/images/20220527035111.png)
![](https://csdnimg.cn/release/wenkucmsfe/public/img/green-success.6a4acb44.png)