如何在不公开内部类的情况下组织包中的库

  • 本文关键字:情况下 包中 内部类 java
  • 更新时间 :
  • 英文 :


我正在开发一个Java库。为了在内部组织事情,我将我的课程分为 2 个包:A 和 B。我只想向库用户公开包 A 中的一些类。但在内部,我需要从包 A 访问包 B 中的一些类。

如何在不向库用户公开包 B 中的类的情况下执行此操作?如果我将它们设置为包私有,我自己无法从 A 访问它们。如果我将它们公开,则图书馆用户可以看到它们。

是否必须将库中的所有代码放在一个大包中,以便我可以访问内部包私有类?

通常这是用不同的罐子完成的。一个 jar 将包含最终用户需要使用的类的 A 包。其他 jar 将包含您的 A 类将依赖的类。这通常是使用 Maven 等工具完成的。一个很好的例子是使用Apache公共库。您可以将它们导入到类中,但不需要将它们包含在 jar 中。您可以简单地让 Maven 在运行时需要它们。

最新更新