我正在阅读赫伯特·希尔德(Herbert Schildt)撰写的《 Java:完全参考,第11版,第11版》。并不能真正理解作者的含义,
当声明为 public 时,该接口可被其包外部的代码使用。在这种情况下,该接口必须是文件中声明的唯一公共接口,并且该文件必须与该接口具有相同的名称。
答案 0 :(得分:0)
不仅仅是接口,
默认情况下,如果您在文件中声明了公共类,则文件和类都应具有完全相同的名称,并且公共“物”可以在任何地方使用,而不是像“ package-private”那样。默认的java访问修饰符(如果未提供),它允许您的类仅在它们所在的包中可见。
答案 1 :(得分:0)
这是Java原始作者的设计决定。通过明确说明,打包和模块化始终反映在源代码的目录树中,反之亦然。
一个人可能会对这个决定提出质疑-我愿意,这意味着您不能在不破坏整个代码库的代码的情况下重构包装-就是这样做的。