cglib的原理是生成一个被代理类的子类进行增强, 那么为什么子类访问不到父类的属性呢
@Service
public class AopTestService {
public String...value:hello world
bool1:true, bool2:true, value:null
hello world
test: null
第一行: bool1肯定为true, 因为这是从容器中取到的对象...根据aop代理规则, imTest方法可以被代理, 下面就是cglib生成的子类方法, 通过var10000.intercept代理拦截器, 最终使用源类AopTestService的对象去调用imTest...第二行: bool2为true, 因为noImTest方法被final修饰, 无法被代理增强, 所以最终是通过cglib生成的子类去调用父类AopTestService的noImTest方法....所以对象没有正常的初始化, 父类的value属性也就没有了
3. 第三行, this.getValue输出了.