AspectJ如何跟踪匿名接口或类实现

时间:2017-12-21 19:41:03

标签: aop aspectj

假设我有以下代码:

package util;
interface Function {
    public void call(Object... args);
}

OR

package util;
class Function {
    public void call(Object... args){};
}

这就是我使用所述界面或类的方式:

Function onComplete = new Function() {
    @Override
    public void call(final Object... args) {
        ...
    }
}

我想用aspectj做什么跟踪“新功能” - 但它不起作用

@AfterReturning("call(util.Function.new())")

上面的这个切入点不起作用。

非常感谢任何帮助或见解。

谢谢。

1 个答案:

答案 0 :(得分:0)

好的,确定。

这就是答案。

@AfterReturning("call(util.Function+.new())")

" +"表示匹配函数的任何子类以及函数本身。

在哪里

@AfterReturning("call(util.Function.new())")

严格来说只匹配Function类。

这是我通过阅读文档的理解。