问题一:为什么说Java 9模块化的改造成本大?
为什么说Java 9模块化的改造成本大?
参考回答:
Java 9模块化的改造成本大,主要是因为需要梳理模块之间的依赖关系,这个过程可能较为繁琐。尽管Oracle提供了迁移指南和工具供参考,但实际操作中仍然需要投入大量的工作来确保模块化的正确实施。
关于本问题的更多回答可点击原文查看:https://developer.aliyun.com/ask/615245
问题二:模块化带来的封装性有什么好处和潜在问题?
模块化带来的封装性有什么好处和潜在问题?
参考回答:
模块化带来的封装性可以确保非public类以及非导出包中的类无法从模块外部访问,这增强了代码的安全性和可维护性。然而,这也可能导致之前习惯使用的一些内部API(如JDK中的com.sun. 和 sun.包)无法再被访问,尽管Oracle建议不要使用这些类,但在实际应用中,这些内部API的使用可能比较普遍,因此需要注意避免使用这些内部API。
关于本问题的更多回答可点击原文查看:https://developer.aliyun.com/ask/615246
问题三:在Java 9之后,获取JAR中的资源文件有什么变化?
在Java 9之后,获取JAR中的资源文件有什么变化?
参考回答:
在Java 9之前,一些API会在运行期获取JAR中的资源文件,例如通过ClassLoader.getSystemResource,会拿到类似jar:file:!的URL Schema。然而在Java 9之后,这个格式变成了jrt://,这需要开发者在使用资源文件时注意这个变化。
关于本问题的更多回答可点击原文查看:https://developer.aliyun.com/ask/615247
问题四:对于新的项目,使用模块构建是否值得?
对于新的项目,使用模块构建是否值得?
参考回答:
对于新的项目,使用模块构建似乎是值得的,因为它可以帮助程序员更好地定义和组织应用程序的模块,明确模块间的依赖关系,并提升代码的可维护性和重用性。
关于本问题的更多回答可点击原文查看:https://developer.aliyun.com/ask/615248
问题五:大多数开发者为什么会忽略模块系统?
大多数开发者为什么会忽略模块系统?
参考回答:
因为对于已经运行了多年的大型项目,改造的成本可能非常高,这包括需要梳理模块之间的依赖关系、修改现有的代码结构等,这些都可能令人望而却步。
关于本问题的更多回答可点击原文查看:https://developer.aliyun.com/ask/615249