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 周銳 閱讀(287) 評論(0)  編輯  收藏 所屬分類: AspectJ
          主站蜘蛛池模板: 莲花县| 同心县| 五莲县| 东乌珠穆沁旗| 象州县| 浮梁县| 蛟河市| 清苑县| 南靖县| 大冶市| 通渭县| 神木县| 瑞丽市| 关岭| 平安县| 中卫市| 子洲县| 武鸣县| 封开县| 睢宁县| 友谊县| 景谷| 博白县| 长泰县| 娄烦县| 罗江县| 恩施市| 海伦市| 通渭县| 信丰县| 黎平县| 乐清市| 县级市| 牡丹江市| 云龙县| 兴隆县| 正镶白旗| 丽江市| 岳普湖县| 高密市| 宁都县|