一个包中的子包的关系是否与 Java 中两个不同包的关系有任何不同



关于以下问题:星形导入是否包括 Java 中的子包?

所以 Java 中的子包没有什么特别之处,它们被认为是完全不同的包?

示例:包含子包 B 的包 A 的关系与包 A 与其他包 C 的关系相同。

这是正确的。

根据JLS的说法

软件包的

分层命名结构旨在便于以常规方式组织相关软件包,但除了禁止软件包具有与该软件包中声明的顶级类型 (§7.6( 具有相同简单名称的子包之外,它本身没有任何意义。

例如,名为 oliver 的包与另一个名为 oliver.twist 的包之间,或名为 evelyn.wood 和 evelyn.waugh 的包之间没有特殊的访问关系。也就是说,名为 oliver.twist 的包中的代码对包 oliver 中声明的类型的访问权限并不比任何其他包中的代码更好。

最新更新