JDK和JRE的改变
**
JDK8的目录结构:
JDK9目录结构:
JDK9删除了jre,增加了jmods
为什么要增加模块化系统?
- java20多年的历史,导致其开始雍容、庞大。JVM启动会加载rt.jar,至少占用30-60M内存。
- Java代码库越来越大,项目开发中各种框架和代码库使得项目变的非常庞大。不适合小的计算设备(比如嵌入式的系统等等)
- 模块化和组件化是编程的必然趋势。很多语言(js等等)早已经增加模块化系统,Java只是顺应趋势,增加了模块化系统而已。
JDK9怎么实现模块化的?
很简单,在package外在增加一层module,叫为模块化,用module来管理package,用package来管理class文件,主要是指定哪些package可以暴漏,哪些可以隐藏。用module将JDK分为一组模块,可以在编译、运行或构建时,自由组合使用。
如何使用?
创建两个模块,module1和module2,然后module1中创建一个User类,module2中引用User类。
- 创建com.module1
最终结果如下: