On Thu, 24 Mar 2022 14:51:25 GMT, Jonathan Gibbons <j...@openjdk.org> wrote:

>> Is there a suitable term we could use to describe this _ancestry_ 
>> information? We are specifically interested in a superclass-subclass chain 
>> that connects a class in question with java.lang.Object.
>
> `class hierarchy` ?
> `superclass chain` ?
> `superclasses` ?
> `inheritance chain` ?
> `list of superclasses` ?
> `ancestors` ?
> `inheritance list` ?
> `superclass list` ?
> 
> 
> 
> 'inheritance` isn't a bad word, it just doesn't work as a noun in this 
> context. The problem is using it with `tree`, since the superclass-subclass 
> chain is a degenerate tree that is a list.

If we look at the terms available in JLS, what about "All Extended Classes" in 
jdk.javadoc codebase **and** the generated documentation? (Currently, 
"Inheritance Tree" is used as a tooltip title of the respective region.) "All 
Extended Classes" goes nicely with "All Implemented Interfaces". Alternatively, 
we could use Superclasses and  Superinterfaces as per 
https://docs.oracle.com/javase/specs/jls/se18/html/jls-8.html#jls-8.1.4.

No matter which of those two we choose, it might feel awkward because of the 
inherent (no pun intended) asymmetry between classes and interfaces: there can 
be only one direct superclass but multiple direct superinterfaces.

-------------

PR: https://git.openjdk.java.net/jdk/pull/7843

Reply via email to