数组元素集切入点。有解决方法吗?

时间:2010-11-04 10:06:06

标签: java aspectj aop

我刚刚读到,无法在单个数组元素(bug link)上定义切入点。考虑到我确实需要检测数组元素修改,我想知道是否有任何解决方法可以解决这类问题(模式或其他问题)。

类似this article

中描述的内容
public class FieldPointcuts {
     static int ar[];

     public static void main(String[] args) {
         ar = new int[] {100}; //set
         ar[0] = 200; //get
     }
}

和建议

before(int i, Object s, Object[] a):
    arrayset() && args(i, s) && target(a)
{
    System.out.println (" Arrayset:["+i+"/"+(a.length-1)+"] = "+s) ;
}

提前致谢。

1 个答案:

答案 0 :(得分:0)

不幸的是,我无法想到任何可行的方法。我能想到的最好的方法是使用Lists而不是数组,但是如果你编织成第三方代码,这是不可能的。