前言

    AOP 实现的关键就在于 AOP 框架自动创建的 AOP 代理,AOP 代理则可分为静态代理和动态代理两大类,其中静态代理是指使用 AOP 框架提供的命令进行编译,从而在编译阶段就可生成 AOP 代理类,因此也称为编译时增强;而动态代理则在运行时借助于 JDK 动态代理、CGLIB 等在内存中“临时”生成 AOP 动态代理类,因此也被称为运行时增强

   静态代理分为:编译时织入(特殊编译器实现)、类加载时织入(特殊的类加载器实现)。

   动态代理有  :  jdk动态代理(基于接口来实现)、CGlib(基于类实现)。


          

     0---aspectj的类加载期织入的实现方式