aspectJ——捕获构造函数执行
切面:
public aspect PersonAspect {
pointcut persontest() : call(void aspectjtest.Person.say());
before() : persontest(){
System.out.println("aspect person--------before");
}
pointcut constructAspect() : call(aspectjtest.Person.new());
before():constructAspect(){
System.out.println("Person class Construct");
}
}
测试类:
package aspectjtest;
public class Person {
public void say(){
System.out.println("i am a person");
}
}
测试代码:
package aspectjtest;
public class MyClass {
public static void main(String[] args){
Person p = new Person();
p.say();
}
}
运行结果: