使用 Java 的默认包是一种不好的做法吗?

发布于 2024-12-11 08:19:31 字数 29 浏览 0 评论 0原文

使用 Java 的默认包是一种不好的做法吗?

Is the use of Java's default package a bad practice?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(3

痕至 2024-12-18 08:19:31

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

如果未命名的包是一个坏主意,为什么还要存在呢?来自 JLS §7.4.2 :

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

Yes, it is. Ideally, package names should be globally unique, to avoid naming collisions. Using the default package breaks this convention. It's also impossible to import a class from the default package.

Why do unnamed packages exist at all, if it's such a bad idea? From the JLS §7.4.2:

Unnamed packages are provided by the Java platform principally for convenience when developing small or temporary applications or when just beginning development.

浪漫之都 2024-12-18 08:19:31

在许多不同级别上都存在问题:

  • 您无法从非类中导入默认包中的类,
  • 如果您尝试解析多个工件中的默认包,您将遇到类加载问题,
  • 您将无法再使用默认和受保护的范围像平常一样,
  • 您的代码和其他代码之间没有明显的区别

There are problems on many different levels:

  • you can't import classes in the default package from classes that are not
  • you will get class loading problems if you try to resolve the default package in multiple artifacts
  • you can no longer use the default and protected scope like you normally can
  • there's no obvious distinction between your code and other code
友谊不毕业 2024-12-18 08:19:31

是的。问题是无法从默认包中导入类。

Yes, it is. The problem is that it is not possible to import classes from the default package.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文