Java9模块化:新特性与变革
需积分: 9 44 浏览量
更新于2024-09-08
收藏 471KB DOCX 举报
"Java9新特性"
Java9作为Java语言的一个重要版本,引入了一系列创新特性,旨在提升平台的模块化、安全性、性能以及可维护性。以下是Java9的一些核心新特性:
1. **Java平台级模块系统 (Java Platform Module System, JPMS)**
- 模块化是Java9的一大亮点,它通过模块(JavaModule)对代码进行组织,每个模块都有明确的边界,可以控制对外部的依赖和暴露的包。模块描述器(module-info.java)定义了模块的依赖关系和暴露的包,增强了代码的封装性。
- 目标是减少JRE的体积,使得小型设备也能运行Java,同时提升安全性和性能,简化大型应用的开发和维护。
2. **模块的访问权限**
- 模块之间存在可读性(readability)的概念,意味着一个模块能否发现并加载另一个模块。只有具备可读性,才能进一步判断类型间的可访问性(Accessible),即能否实际使用另一个模块的类型。
3. **模块的间接引用 (Transitive)**
- 一个模块可以通过transitive依赖间接访问其他模块的类,这种特性有助于管理和控制模块间的依赖关系。
4. **类加载器的改变**
- 类加载器(ClassLoader)在Java9中仍然遵循原有的加载逻辑,但其查找类的能力受到模块系统的限制,只允许加载readable和accessible的类,提高了安全性。
5. **JLink**
- JLink是一个用于构建定制化运行时镜像的工具,它可以将特定的模块及其依赖打包在一起,生成轻量级的JRE,适合于特定的应用场景。
6. **Java版本更新字符串格式**
- 版本号采用$MAJOR.$MINOR.$SECURITY.$PATCH的格式,更清晰地标识了版本信息。
7. **JShell (Read-Eval-Print Loop, REPL)**
- JShell是Java9引入的命令行工具,用于快速测试和实验Java代码片段,提升了开发者的工作效率。
8. **改进的HTTP客户端**
- Java9引入了一个新的内置HTTP客户端API,提供了更现代、高效的HTTP通信能力。
9. **多版本兼容JAR (Multi-Release JARs)**
- 这一特性允许JAR文件包含针对不同Java版本的代码,使得库开发者可以利用新版本的特性,同时保持对旧版本的兼容。
10. **改进的Javadoc**
- Java9的Javadoc工具支持Markdown语法,使得文档注释更加灵活和易读。
这些新特性使得Java9成为了一个更加现代化、高效且易于维护的平台,为开发者提供了更好的工具和更强的功能,推动了Java生态系统的发展。
2018-01-19 上传
2018-03-20 上传
2018-03-31 上传
2018-08-08 上传
2018-03-30 上传
2018-10-16 上传
2023-07-12 上传
2019-06-28 上传
RebBlackTree
- 粉丝: 1
- 资源: 5
最新资源
- 黑板风格计算机毕业答辩PPT模板下载
- CodeSandbox实现ListView快速创建指南
- Node.js脚本实现WXR文件到Postgres数据库帖子导入
- 清新简约创意三角毕业论文答辩PPT模板
- DISCORD-JS-CRUD:提升 Discord 机器人开发体验
- Node.js v4.3.2版本Linux ARM64平台运行时环境发布
- SQLight:C++11编写的轻量级MySQL客户端
- 计算机专业毕业论文答辩PPT模板
- Wireshark网络抓包工具的使用与数据包解析
- Wild Match Map: JavaScript中实现通配符映射与事件绑定
- 毕业答辩利器:蝶恋花毕业设计PPT模板
- Node.js深度解析:高性能Web服务器与实时应用构建
- 掌握深度图技术:游戏开发中的绚丽应用案例
- Dart语言的HTTP扩展包功能详解
- MoonMaker: 投资组合加固神器,助力$GME投资者登月
- 计算机毕业设计答辩PPT模板下载