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

123456789101112131415161718192021222324252627282930313233
  1. import org.aspectj.testing.Tester;
  2. class C {
  3. public void a() {
  4. T.add("a");
  5. }
  6. }
  7. aspect A1 { declare precedence: A1, A2;
  8. pointcut cut(): target(C) && execution(void a());
  9. before(): A1.cut() { T.add("A1"); }
  10. }
  11. aspect A2 { declare precedence: A2, A3;
  12. before(): A1.cut() { T.add("A2"); }
  13. }
  14. aspect A3 { declare precedence: A3, A1;
  15. before(): A1.cut() { T.add("A3"); }
  16. }
  17. class T {
  18. private static StringBuffer order = new StringBuffer();
  19. public static void add(String s) { order.append(s); order.append(':'); }
  20. public static void reset() { order = new StringBuffer(); }
  21. public static void checkAndReset(String expectedValue) {
  22. Tester.checkEqual(order.toString(), expectedValue);
  23. order.setLength(0);
  24. }
  25. }