大家好,今天小编来为大家解答深入解析Java 9模块化系统:新特性与实际应用这个问题,很多人还不知道,现在让我们一起来看看吧!
减少内存开销,提高效率。强封装性:每个模块都声明哪些包是公共的,哪些是内部的。这些规则可以在Java编译和运行时实现,以确保外部模块不能使用内部类型。模块化的代码演示步骤要求:变量a Module模块,然后使用ModuleB模块访问。
创建一个ModuleA,然后创建两个包,com.muziwk.utils和com.muziwk.model。在utils包中创建ArrayUtils工具类,并创建获取最大值的方法。在模型包中创建一个Person 类并创建一个新的输出。模块信息仅输出utils包。模型包对外部是隐藏的。创建一个ModuleB,然后新建一个ModuleTest类,测试使用ArrayUtils创建一个输入模块信息,并添加依赖模块化之间的访问方式image-20211202172218972.png 在utils包类中创建ArrayUtils工具,并创建获取最大值的方法包com.muziwk.utils;
公共类ArrayUtils {
公共静态int getMax(int[] arr){
//1.定义一个变量来存储当前最大值
int max=arr[0];
//2.使用存储最大值的变量与数组中的每个元素进行比较
for (int i=1; i arr.length; i++) {
如果(arr[i]最大){
//3.如果发现数组的元素大于最大值变量,则最大值变量存储当前元素
最大值=arr[i];
}
}
//4.返回最大值
返回最大值;
}
}在模型包package com.muziwk.model中创建Person类;
公共类人{
私有int id;
私有字符串名称;
公共人(int id,字符串名称){
这个.id=id;
this.name=名称;
}
@覆盖
公共字符串toString() {
}
}4.新建一个输出模块信息,只输出utils包,model包对外隐藏。
image-20211202172750750.pngmodule moduleA {
导出com.itheima.utils;
}5.创建一个ModuleB,然后新建一个ModuleTest类,使用ArrayUtils进行测试
包com.muziwk.test;
公共类模块测试{
公共静态无效主(字符串[] args){
int[] arr={10,19,50,3,2};
int max=ArrayUtils.getMax(arr);
System.out.println("最大值:"+max);
}
}6.创建输入模块信息并添加依赖
image-20211202173116913.png小结了解模块化的好处
提高效率
可以实现包隐藏,隐藏包中的所有类。
如何建立模块之间的访问
定义输出模块信息
定义输入模块信息
【深入解析Java 9模块化系统:新特性与实际应用】相关文章:
2.米颠拜石
3.王羲之临池学书
8.郑板桥轶事十则
用户评论
终于有点像c/c++那样Modular化的感觉了!
有10位网友表示赞同!
一直在玩Java,这种可模块化的设计真是太棒了,方便管理项目大了...
有10位网友表示赞同!
之前每次搞依赖的时候都很头疼,这下子应该好多了吧?
有6位网友表示赞同!
看了一下文档,这个模块系统有点复杂,需要慢慢学习啊。
有12位网友表示赞同!
Java 9 的这些新特性确实让人眼前一亮,感觉进步很大!
有9位网友表示赞同!
对于大型项目来说,可模块化设计简直必不可少!
有5位网友表示赞同!
我有点担心模块化会让代码更难阅读和理解...
有17位网友表示赞同!
这个java 模块化系统是不是跟Go 语言的包机制类似?
有9位网友表示赞同!
期待看看以后Java 项目怎么利用模块化系统的优势!
有6位网友表示赞同!
学习一下Java 9 的模块化系统,扩展一下我的技能了.
有11位网友表示赞同!
如果模块系统的应用效果好,未来Java的发展方向就是模块化了嘛.
有19位网友表示赞同!
希望这个新特性能带来更好的代码组织和维护体验!
有10位网友表示赞同!
以后可以把Java 项目拆分成一个个独立的模块开发,提高效率吧?
有15位网友表示赞同!
对于初学者来说,了解Java 9 的模块化系统是个挑战,但我愿意尝试!
有8位网友表示赞同!
期待社区能提供更多关于Java 9 模块化的教程和资源!
有6位网友表示赞同!
是不是会有专门的工具可以帮助管理这些模块呢?
有15位网友表示赞同!
这个特性对大型开源项目有什么影响呢?
有10位网友表示赞同!
学习一些新的知识,总是让人感到兴奋!(java 9)
有15位网友表示赞同!
Java 发展的方向越来越好!
有7位网友表示赞同!