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

使用Java的默认包是一种糟糕的做法吗?

使用Java的默认包是一种糟糕的做法吗?

qq_笑_17 2019-07-22 10:00:08
使用Java的默认包是一种糟糕的做法吗?使用Java的默认包是一种糟糕的做法吗?
查看完整描述

3 回答

?
HUWWW

TA贡献1874条经验 获得超12个赞

是的,是的。理想情况下,包名应该是全局唯一的,以避免命名冲突。使用默认包会破坏此约定。从默认包导入类也是不可能的。

为什么没有命名的包存在,如果这是一个糟糕的想法?从…JLS§7.4.2:

Java平台提供未命名的包,主要是为了在开发小型或临时应用程序或刚开始开发时提供方便。


查看完整回答
反对 回复 2019-07-22
?
汪汪一只猫

TA贡献1898条经验 获得超8个赞

有许多不同层次的问题:

  • 无法从未导入的类导入默认包中的类
  • 如果尝试解决多个工件中的默认包,则会遇到类加载问题。
  • 您不能再像通常那样使用默认的和受保护的范围了。
  • 在您的代码和其他代码之间没有明显的区别


查看完整回答
反对 回复 2019-07-22
?
慕哥9229398

TA贡献1877条经验 获得超6个赞

是的。正如其他答案所述,您不能从默认包加载类。

见答案:

如何从默认包导入类
如何访问默认包中的java类?

但是,log4j要求配置位于默认包中。这是唯一合理的东西保持在那里。

编辑:正如SeanPatrickFloyd和Michael在评论中指出的那样,您可以将任何配置文件放入默认包中。感谢你们两位向我指出了这一点。


查看完整回答
反对 回复 2019-07-22
  • 3 回答
  • 0 关注
  • 514 浏览

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号