【问题标题】:IntelliJ IDEA: Is there a way to list all interfaces implemented by a class and its parents?IntelliJ IDEA:有没有办法列出一个类及其父类实现的所有接口?
【发布时间】:2017-07-11 15:59:51
【问题描述】:

我从事一个相对复杂的 Java 项目,其中类通常在 Object 之前有四个或五个祖先。给定这样一个类,例如D 在这样的层次结构中:Object > A > B > C > D,我想知道它有效实现的所有接口。也就是说,我也有兴趣看到D 实现了,比如说,Serializable,即使它只在类B 的声明中声明,即使D 实际上没有实现任何指定的方法界面(当然,如果谈论Serializable)。

我尝试过的这些信息的一些潜在来源包括:

  • 在“结构”窗口中使用“按定义类型分组”——但这不会显示空接口(= 没有方法的接口),并且
  • “层次结构”窗口 -- 但在查看类的层次结构时不包括接口。

有没有办法在 IDEA 中获取这些信息,而无需打开相关类的所有祖先类的文件?

【问题讨论】:

标签: java intellij-idea interface superclass class-hierarchy


【解决方案1】:

你可以试试

  • 打开类文件。
  • Ctrl + H。 (或者只是浏览项目窗口并按下按键。)
  • 您可以看到层次图出现在右侧。
  • 尝试切换到 Supertypes Hierarchy(在下图中以红色圈出)按钮。 :))

【讨论】:

  • 谢谢,这正是我想要的!
【解决方案2】:

如果你对 UML 表示没问题,那么使用

在 mac 上按 ⌥⇧⌘U⌥⌘U

在默认 Windows 键盘映射上按 Ctrl+Shift+Alt+UCtrl+Alt+U

https://www.jetbrains.com/help/idea/2016.3/viewing-class-hierarchy-as-a-class-diagram.html

【讨论】:

  • 我似乎没有这个选项。我有一个 IDEA v2016.2.5,但这个功能应该已经存在:jetbrains.com/help/idea/2016.2/…。但是,快捷方式不起作用(我在 Linux 上)并且我在上下文菜单中看不到该选项。如果不是由于缺少某些插件引起的,我猜是因为这个项目实际上是 Java 和 Groovy 的混合体,图表功能可能不支持。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2021-07-20
  • 1970-01-01
  • 2011-02-10
  • 1970-01-01
  • 2020-12-02
  • 1970-01-01
  • 2011-04-28
相关资源
最近更新 更多