You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

Tricky3.java 586B

1234567891011121314151617181920212223242526272829303132
  1. import org.aspectj.testing.Tester;
  2. public class Tricky3 {
  3. public static void main(String[] args) {
  4. C c = new SubC();
  5. }
  6. }
  7. class C {
  8. }
  9. class SubC extends C {
  10. void m() { }
  11. }
  12. aspect A1 pertarget(target(SubC)) {
  13. after() returning (SubC sub): call(new(..)) {
  14. System.out.println("new " + sub);
  15. }
  16. }
  17. aspect A2 pertarget(call(void SubC.*())) {
  18. after() returning (SubC sub): call(new(..)) {
  19. System.out.println("new " + sub);
  20. }
  21. }
  22. aspect A3 pertarget(call(void m())) {
  23. after() returning (SubC sub): call(new(..)) {
  24. System.out.println("new " + sub);
  25. }
  26. }