AspectJ引介

引介的定义:

   在现有类的不改变情况下 给现有类增加属性 方法 构造函数  或者指定实现某个接口

继承某个类

 

1.      内部成员的增加

    public String Hello.id = "s";

2.      方法的增加

   public void Hello.my()

    {

        System.out.println("在切面创造了my方法");

    }

3.      实现接口

   declare parents:Hello implements java.lang.Comparable;

4.      指定继承

declare parents:Hello extends

 

源码1:HelloAspect.aj

importjava.util.Date;

 

public aspect HelloAspect {

   

    private static long Long;

   

    //引介:申明类里面的属性方法构造函数

    public String Hello.id = "s";

    public void Hello.my()

    {

        System.out.println("在切面创造了my方法");

    }

    pointcut somePointCut():execution(* Hello.sayHello());

 

    before():somePointCut()

    {

        Long = new Date().getTime();

        System.out.println("开始说 ");

    }

    after() returning(int values):somePointCut()

    {

       while(values!=0){values--;}

        System.out.println("说完了 "+thisJoinPoint.getSignature().getName()+"\n耗时"+(new Date().getTime() - Long)+"ms ");

    }

}

源码2:Hello.java

public class Hello

{

    public int sayHello()

    {

        System.out.println("Hello 哥哥");

        return 5000000;

    }

   

    public static void main(String[] args)

    {

        Hello h = new Hello();

        h.sayHello();

        h.my();

    }

}

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值