0

给定一个 java.lang.reflect.Method 对象,是否有一种简单的方法来获取它覆盖的方法的层次结构。例如:

class A {
    public void someMethod() { ... }
}

interface B {
    public void someMethod();
}

class C extends A {
    public void someMethod() { ... }
}

class D extends C implements B {
    public void someMethod() { ... }
}

给定 D#someMethod 的 java.lang.reflect.Method 对象,我是否可以轻松获取树:

D#someMethod
 |
 +- C#someMethod
 |   |
 |   +- A#someMethod
 |
 +- B#someMethod

我猜一定有一种简单的方法可以做到这一点,也许是现有的图书馆?

4

1 回答 1

0

最终没有找到有用的库,所以按照 assylias 的评论,只是简单地使用反射来遍历继承并构建树(包括超类和接口)。我没有构建方法树,而是构建随后可以“遍历”的类树。

于 2012-10-25T08:29:57.070 回答