Вы не можете выбрать более 25 тем Темы должны начинаться с буквы или цифры, могут содержать дефисы(-) и должны содержать не более 35 символов.

1234567891011121314151617181920212223242526272829303132
  1. public class AspectInheritance3 {
  2. public static void main(String[] args) {
  3. }
  4. }
  5. abstract aspect Base {
  6. abstract pointcut targets(int i, C c);
  7. after(int i, C c): targets(i, c) {
  8. //
  9. }
  10. }
  11. aspect GoodConcrete extends Base {
  12. pointcut targets(int i, C c);
  13. }
  14. // this aspect is illegal because concrete-concrete extension is illegal
  15. aspect DoubleConcrete extends GoodConcrete {
  16. }
  17. aspect OtherAspect {
  18. // can't reference an abstract pointcut using a static reference
  19. before(): Base.targets(int, C) { }
  20. }
  21. class C {
  22. public void m(int i) { }
  23. }
  24. class SubC extends C {}