我有一个抽象类Foo
。
如果我创建一个混凝土类的新实例,该实例在一个名为 Bar
的方面。
我尝试了:
public pointcut errorcall(): call(Foo.new(..)) && !within(Bar);
declare error: errorcall():"Error: You must use Bar creation methods!";
,但它不会捕获Foo
的子类。
如果我将点键声明为:
public pointcut errorcall(): call(ConcreteFoo.new(..)) && !within(Bar);
它捕获了栏外的混凝土创建,但我想拦截foo的每个子类。
我该怎么做?
MyClass+
符号也抓住子类。可以在任何方面找到此信息,例如这里:
public pointcut errorcall():
call(Foo+.new(..)) && !within(Bar);