java - 为什么 Java 8 不允许接口(interface)成员是私有(private)的?

标签 java

<分区>

同时 some have asked this question before ,那是在 Java 8 发布之前。

以前,静态成员是不允许的,因为实现细节不能在接口(interface)中定义。这也是为什么什么都不应该是私有(private)的,因为接口(interface)的实现者需要提供实现细节。

这种情况在 Java 8 中有所改变,不是吗?默认方法定义实现细节,静态方法也是如此。那么,为什么仍然不允许这样做呢?

最佳答案

由于实现中的时间限制。

私有(private)方法最初属于规范,但在 Java 8 开发时由 Brian Goetz 发送给 lambda-spec-experts 邮件列表的一封标题为“Some Pullbacks ”的电子邮件中,私有(private)方法被取消了。

We would like to pull back two small features from the JSR-335 feature plan:

  • private methods in interfaces
  • "package modifier" for package-private visibility

The primary reason is resourcing ...

关于java - 为什么 Java 8 不允许接口(interface)成员是私有(private)的?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29338179/

相关文章:

java - Jackson JSON 反序列化列表

java - 带客户端身份验证的 HTTPS 在 Android 上不起作用

java - GC 输出说明

java注解判断被注解的方法是否执行

java - Spring Boot 1.5禁用oauth2安全

Java-迷宫广度优先搜索最短路径

java - 单击时将数据 RecyclerView 数据传递到另一个 Activity

java - 在 Java 中使用多个分隔符分割字符串时出现不需要的元素

java - 无法找到如何实现binaryOperator接口(interface)java的apply方法

java - java中的匿名内部类及其语法