|
1234567891011121314151617181920212223242526272829 |
- import org.aspectj.testing.Tester;
-
- public class CallsToArray {
- public static void main(String[] args) {
- byte[] a = new byte[] {0, 1};
- byte[] b = (byte[])a.clone();
-
- Tester.check(a != b, "cloned array is different");
- Tester.check(a[0] == b[0] && a[1] == b[1], "but compares equal");
-
- Tester.check(A.returnedClone == b, "advice did right thing");
- }
-
- }
-
-
- aspect A {
- static Object returnedClone;
- after () returning(Object cloned): call(Object Object.clone()) {
- System.out.println("running advice");
- A.returnedClone = cloned;
- }
- /*
- static after () returning(Object cloned): calls(Object .clone()) {
- System.out.println("running advice on byte[]");
- A.returnedClone = cloned;
- }
- */
- }
|