java8中java.util.stream包的不完整文档

时间:2019-01-01 01:03:40

标签: java

在源代码中,显然存在一个AbstractPipeline类,该类实现了BaseStream接口,但是未对此进行记录:

https://docs.oracle.com/javase/8/docs/api/java/util/stream/BaseStream.html

此外,抽象类ReferencePipeline实现了Stream接口,但未提及: https://docs.oracle.com/javase/8/docs/api/java/util/stream/Stream.html

此外,在软件包摘要中,完全没有提及这些抽象类: https://docs.oracle.com/javase/8/docs/api/java/util/stream/package-summary.html

鉴于抽象类及其与接口的关系已在java.util之类的其他软件包中清楚记录:

https://docs.oracle.com/javase/8/docs/api/java/util/package-summary.html

我们可以说这是java8流文档的错误吗?

1 个答案:

答案 0 :(得分:2)

您提到的两个类都具有包级访问权限。这意味着它们不是公共类,并且实际上是实现细节,而不是公共API的一部分。即使您知道它们,也不能直接在代码中直接使用这些类。

这不是bug,而是故意的选择。许多基类和接口具有包级别的访问权限,因为它们在整个包中使用(包括java.util)。除非您深入研究特定JRE实现的源代码,否则您将一无所知。