在aspectj中,..和*的含义是什么

Mik*_*tel 6 java annotations aspectj

我的理解是,..0-Many指定参数和*是一个ARG any名称.它是否正确?

aspectj支持语法args(..,myArg,..)吗?

Bij*_*men 10

这来自AspectJ网站:http://www.eclipse.org/aspectj/doc/next/progguide/semantics-pointcuts.html

* 表示除"."之外的任意数量的字符.

.. 表示任意数量的字符,包括任意数量的"."

更新 来自AspectJ in Action - 用于方法签名:

在方法签名中,通配符...用于表示方法采用的任何类型和数量的参数

* 指定单个参数


kri*_*aex 5

之前别人已经回答了一部分问题,所以我只修改:

.., bla, ..不起作用,因为如果将参数绑定bla到变量,则可能有多个匹配组合,以防在参数列表中多次出现匹配类型。例子:

void foo(int a, String b, String c, File d)

现在,如果建议是:

before(String bla) : call(void foo(.., bla, ..)) && args(bla)

应该bla绑定到或的String值吗?bc