Hi David, I believe this is intentional - Greedy has itself inherited as an 
accessible nested class, because Greedy inherits itself from Integrator.

Try using this class literal in JShell:

Gatherer.Integrator.Greedy.Greedy.class

You will find this resolves to the Gatherer.Integrator.Greedy class. So I 
believe javadoc is correct as it reflects actual language behavior.

The behavior is similar for other nested interfaces which extend their 
enclosing interface, such as PrimitiveIterator.OfInt.

Regards,
Chen
________________________________
From: javadoc-dev <[email protected]> on behalf of David Alayachew 
<[email protected]>
Sent: Monday, November 17, 2025 9:25 PM
To: [email protected] <[email protected]>
Subject: Bug -- Nested Class box doesn't look like it belongs

Hello @[email protected]<mailto:[email protected]>,

Please look at the following Javadoc. Compare the "Nested Class Summary" 
sections between them.

https://docs.oracle.com/en/java/javase/25/docs/api/java.base/java/util/stream/Gatherer.Integrator.html

https://docs.oracle.com/en/java/javase/25/docs/api/java.base/java/util/stream/Gatherer.Integrator.Greedy.html

There should not be a box for nested class summary for the Greedy one, right? 
That looks wrong, especially when compared to Integrator.

And I think it is Javadoc's fault because there is nothing I can see in the 
source code that would trigger this behaviour.

Am I mistaken?

Thank you for your time and consideration.
David Alayachew

Reply via email to