org.aspectj/tests/new/NotAndDeclaringTypes.java

38 lines
776 B
Java
Raw Normal View History

2002-12-16 19:51:06 +01:00
import org.aspectj.testing.Tester;
public class NotAndDeclaringTypes {
public static void main (String args []) {
Rectangle r = new Rectangle ();
Square s = new Square ();
r.getSurface();
Tester.checkAndClearEvents(new String[] { "advice" });
s.getSurface();
Tester.checkAndClearEvents(new String[] { });
}
}
class Rectangle {
public String toString () { return "Rectangle"; }
public int getSurface () { return 100; }
}
class Square extends Rectangle {
public String toString () { return "Square"; }
public int getSurface () { return 200; }
}
aspect Concern {
pointcut pc () : call (int Rectangle.getSurface ())
&& !call (int Square.getSurface ());
before () : pc () {
Tester.event("advice");
}
}