AspectJ中的双点“..”语法是用来匹配任意数量的参数或任意子包的。这种语法通常用作切入点表达式中的通配符,以便捕捉更广泛的切点。以下是一个使用双点语法的示例:
@Pointcut("execution(* com.example..*(..))")
public void anyMethodUnderPackage() {}
上述示例匹配com.example包以及其子包中的任何方法调用。双点“..”语法表示可以匹配任意数量的子包。
@Pointcut("execution(* com.example.MyClass..*(..))")
public void anyMethodUnderMyClass() {}
上述示例匹配com.example.MyClass类中的任何方法调用,不管这些方法是否在MyClass中定义或继承,也不管它们的访问修饰符是什么。
需要注意的是,使用双点“..”语法可能会导致性能下降,因为它会匹配更广泛的切点。因此,在应用程序中使用切入点表达式时,要谨慎使用双点“..”语法。