为了账号安全,请及时绑定邮箱和手机立即绑定

java: jdk isnt specified for module

标签:
杂七杂八
Java模块化开发中完全限定名的使用

在Java编程语言中,模块化是一种重要的编程范式,可以帮助我们更好地组织和管理代码。在模块化的过程中,一个常见的问题是如何指定JVM模块的路径。最近,我在阅读一些相关资料时,发现了一个有趣的现象,即当我们在模块内部引用外部模块时,需要使用完全限定名(包括包名和类名)来指定对象。这一现象引发了我对外部模块和内部模块之间关系的思考。

完全限定名

在Java中,完全限定名是指包括包名和类名的名称,例如:com.example.MyClass。当我们需要引用这个名称时,就需要使用完全限定名。相比之下,简单的类名或包名只能引用到一部分信息,例如:com.example MyClass 或 com.example com.subpackage.MyClass。

为什么需要使用外部模块的完全限定名

在使用完全限定名时,我们需要使用外部模块的完全限定名是因为,在Java中,每个模块都有自己的命名空间,而完全限定名可以确保我们在引用外部模块时,不会意外地引用到其他模块中的同名类或包。这就像在使用计算机时,我们需要使用完整的地址来访问某个文件或文件夹,而不是只使用部分路径,以避免访问错误。

内部模块与外部模块的关系

当我们有一个内部模块A,它引用了外部模块B中的一个类时,我们是否需要使用外部模块B的完整限定名呢?答案是肯定的。因为,即使我们只需要访问内部模块A中的类,我们仍然需要使用外部模块B的完全限定名来指定对象。这是因为,在Java中,编译器会根据类的实际引用关系来确定最终的类加载顺序,而在这种情况下,我们需要确保外部模块B中的类在内部模块A中被正确地引用。

结论

总的来说,在使用Java模块化开发时,我们需要注意完全限定名的使用。尽管这可能会增加一些复杂性,但它可以帮助我们更好地管理代码,避免重复引用和访问错误。希望这篇博客能够帮助你更好地理解Java模块化开发中的这个问题。

点击查看更多内容
TA 点赞

若觉得本文不错,就分享一下吧!

评论

作者其他优质文章

正在加载中
  • 推荐
  • 评论
  • 收藏
  • 共同学习,写下你的评论
感谢您的支持,我会继续努力的~
扫码打赏,你说多少就多少
赞赏金额会直接到老师账户
支付方式
打开微信扫一扫,即可进行扫码打赏哦
今天注册有机会得

100积分直接送

付费专栏免费学

大额优惠券免费领

立即参与 放弃机会
意见反馈 帮助中心 APP下载
官方微信

举报

0/150
提交
取消