1234567891011121314151617181920212223242526272829303132 |
- import org.aspectj.testing.Tester;
-
- public class Tricky3 {
- public static void main(String[] args) {
- C c = new SubC();
- }
- }
-
- class C {
- }
-
- class SubC extends C {
- void m() { }
- }
-
- aspect A1 pertarget(target(SubC)) {
- after() returning (SubC sub): call(new(..)) {
- System.out.println("new " + sub);
- }
- }
-
- aspect A2 pertarget(call(void SubC.*())) {
- after() returning (SubC sub): call(new(..)) {
- System.out.println("new " + sub);
- }
- }
-
- aspect A3 pertarget(call(void m())) {
- after() returning (SubC sub): call(new(..)) {
- System.out.println("new " + sub);
- }
- }
|