考虑这个例子
class FooListener extends Listener {
@Listen
def runMeToo = {
...
}
}
trait Listener {
@Listen
def runMe = {
...
}
}
我正在编写自省代码来查找给定类(即FooListener)的所有方法,这些方法都用某个注释(即@Listen)进行了注释。它们将在某些情况下被调用。所以我需要他们所有的java.lang.Method实例。
在 FooListener 类中很容易找到这些方法。也很容易找到那些超类。
问题是如何找到那些继承自特征的?以及特质的特质?ETC...