为什么Java不允许在接口中使用私有成员?

2022-08-31 11:07:37

为什么Java不允许在接口中使用私有成员?有什么特别的原因吗?


答案 1

来自 Java 语言规范(访问控制):

“Java编程语言提供了访问控制机制,以防止包或类的用户依赖于该包或类的实现的不必要的细节。

访问控制就是隐藏实现细节。接口没有要隐藏的实现。


答案 2

在Java 9中,接口中的私有方法是可能的。

Java 9 规范

javac 编译器团队很高兴地宣布,从 JDK 的 9 b54 构建开始,接口中提供了对私有方法的编译器支持。


推荐