在Java中,为什么必须将公共接口作为文件中声明的唯一公共接口,为什么文件必须具有与该接口相同的名称?

时间:2019-12-04 17:56:11

标签: java oop interface

我正在阅读赫伯特·希尔德(Herbert Schildt)撰写的《 Java:完全参考,第11版,第11版》。并不能真正理解作者的含义,

  

当声明为 public 时,该接口可被其包外部的代码使用。在这种情况下,该接口必须是文件中声明的唯一公共接口,并且该文件必须与该接口具有相同的名称。

2 个答案:

答案 0 :(得分:0)

不仅仅是接口,

默认情况下,如果您在文件中声明了公共类,则文件和类都应具有完全相同的名称,并且公共“物”可以在任何地方使用,而不是像“ package-private”那样。默认的java访问修饰符(如果未提供),它允许您的类仅在它们所在的包中可见。

答案 1 :(得分:0)

这是Java原始作者的设计决定。通过明确说明,打包和模块化始终反映在源代码的目录树中,反之亦然。

一个人可能会对这个决定提出质疑-我愿意,这意味着您不能在不破坏整个代码库的代码的情况下重构包装-就是这样做的。