posts - 431,  comments - 344,  trackbacks - 0

          call(Signature)切入點的語法是:
          pointcut <pointcut name>(<any values to be picked up>) : call(<optional  modifier> <return type> <class>.<method>(<parameter types>));

          package com.eric.aspectj;

          public aspect MyAspectj {
           pointcut callPointCut(MyClass myClass, int age, String name) : call(void com.eric.aspectj.MyClass.foo(int, String)) && target(myClass) && args(age, name);
           before(MyClass myClass, int age, String name) : callPointCut(myClass, age, name) {
            System.out.println("before...name : " + name + " age : " + age);
           }
           after(MyClass myClass, int age, String name) returning: callPointCut(myClass, age, name) {
            System.out.println("after...");
           }
          }


          package com.eric.aspectj;

          public class MyClass {

           public void foo(int age, String name) {
            System.out.println("foo " + name + " age is " + age);
           }
           public static void main(String[] args) {
            MyClass object = new MyClass();
            object.foo(24, "Eric Chau");
           }
          }

          運行結果:
          before...name : Eric Chau age : 24
          foo Eric Chau age is 24
          after...

          posted on 2007-07-03 15:10 周銳 閱讀(286) 評論(0)  編輯  收藏 所屬分類: AspectJ
          主站蜘蛛池模板: 广南县| 湖口县| 高雄县| 黄山市| 汉阴县| 巧家县| 武平县| 司法| 新泰市| 西乡县| 江陵县| 新竹县| 绥化市| 靖西县| 兰坪| 马公市| 石柱| 称多县| 离岛区| 固原市| 三门峡市| 井研县| 永丰县| 商都县| 临泽县| 潍坊市| 阿荣旗| 广州市| 汝阳县| 泰宁县| 区。| 周口市| 阿图什市| 卢氏县| 武川县| 湛江市| 渝北区| 太谷县| 滨州市| 米易县| 阿鲁科尔沁旗|