Search code examples
javaintellij-ideainterfacesuperclassclass-hierarchy

IntelliJ IDEA: Is there a way to list all interfaces implemented by a class and its parents?


I work on a relatively complex Java project where classes commonly have four or five ancestors before Object. Given such a class, e.g. D in a hierarchy like this: Object > A > B > C > D, I would like to know what all interfaces it effectively implements. That is, I am also interested in seeing that D implements, say, Serializable even if that is declared only in the declaration of class B and even when D does not actually implement any of the methods specified by the interface (naturally, if talking about Serializable).

Some potential sources of this information I tried include:

  • using "Group by Defining Type" in the Structure window -- but that won't show empty interfaces (= interfaces without methods), and
  • the "Hierarchy" window -- but that does not include interfaces when viewing the hierarchy for a class.

Is there a way to obtain this information in IDEA without having to open files of all ancestor classes of the class in question?


Solution

  • You can try

    • Open the class file.
    • Press Ctrl + H. (or just navigate through project window and press the keys.)
    • You can see the Hierarchy Diagram appears right hand side.
    • Try switch to Supertypes Hierarchy(circled in red in below image) button. :))

    enter image description here