【发布时间】:2017-01-04 13:57:24
【问题描述】:
查看 Java 8 API 中的一些接口(示例:Stream),我看到静态方法被声明为 public static,但默认方法和抽象方法不是。从技术的角度来看,如果我在接口的静态方法中省略 public,我会得到与 public 访问修饰符不同的东西吗?
【问题讨论】:
-
更大的问题是它为什么会困扰你?
-
可能是因为它们是从实用程序类
Streams重构而来的,该实用程序类在 JDK 8 发布之前已从 JDK 8 中删除。 -
我习惯于根据我在自己的 Java API 中阅读的内容编写代码,因为我相信当 Oracle 工程师说这是一种“不鼓励的做法”时,他们会遵循他们自己的建议。所以重点不在于它打扰我。我想从技术的角度知道,如果我在接口的静态方法中省略了 public,我得到了一些与 public 访问修饰符不同的东西。
-
编辑问题以使其清楚。
标签: interface java-8 static-methods