1**AOP 底层使用动态代理
    (1)有两种情况动态代理
    第一种 有接口情况,使用 JDK 动态代理**

    • 创建接口实现类代理对象,增强类的方法

    image.png

    第二种 没有接口情况,使用 **CGLIB **动态代理

    • 创建子类的代理对象,增强类的方法

    image.png