为什么Java提供在接口内部声明接口的功能?

10

我正在尝试不同组合的内部类。我想知道Java提供编写接口内部接口的功能。这没有给我任何编译时错误。 有人能告诉我这有什么用吗?

public interface IA {

    public interface IB{

    }
}
1个回答

9
这使您能够将子接口放在一个命名空间中,这个命名空间可能比不同的包更有意义。Java API 中一个很好的例子是 Map.Entry 接口。一个 Entry 只在实现了 Map 接口的上下文中才有意义,因此它被定义为一个接口内部的接口。
请注意,除了内部 之外,内部接口始终是静态的,正如 Jesse Glick 在他的答案中提到的那样,回答了一个相关问题

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接