Community
Participate
Working Groups
"Show type hierarchy" shows all the classes that extends a certain type but ignores the type generic. e.g. Map<String, String> m; If I'll hit the F4 button on the Map<String, String> I'll get all the classes that implements Map (which can be a huge number) e.g. HashMap (which doesn't implements Map<String, String>) and not all the classes that implements Map<String, String>.
Type hierarchies currently only show the declaration hierarchy, but not concrete parameterized types. We could think about adding a new mode to consider resolved types. However, this would not give a much smaller hierarchy, since many generic subtypes of Map<K,V> would still be part of the hierarchy (e.g. Hashtable<String, String>) while only a few (like Properties, which extends Hashtable<Object,Object>) could be left out. As soon as wildcards come into play, the hierarchy explodes. E.g. Map<String, ? extends Object>, Map<String, ? extends Serializable>, and Map<String, ? super String> are just a few of the many supertypes of Map<String, String>. The subtypes of Collection<? extends Object> are not even a finite set. In summary: The resolved type hierarchy could not be shown completely, and showing only parts of it would IMO be confusing.