这里return 的值就是代理对象执行代理方法后的返回值。一般而言, 总是希望返回真实对象的结果, 将前置、后置处理隐藏在invoke里面就好了。

解决方案 »

  1.   

    return null不代理,另外一个是被代理
      

  2.   

    return xxx
    只是一个返回值而已
    你调用目标方法是invoke在做
    增强是你自己写的代码,和return什么值无关return只是与你调用方法后的返回值有关
      

  3.   

    什么时候调用方法后需要返回值啊 想不明白啊那你原方法为什么会有返回值?
    比如你原方法要返回一个信息,难道代理之后这个返回信息就不需要了吗?
    代理方法不应该改变原方法的固有特性~哦  就是说原来方法有返回值的 我就要return 一个object   没有的话就返回NULL
    但是既然是代理  既能代理有返回值的方法  也能代理没有返回值的方法啊  那是然会null还是返回一个object呢
      

  4.   

    什么时候调用方法后需要返回值啊 想不明白啊那你原方法为什么会有返回值?
    比如你原方法要返回一个信息,难道代理之后这个返回信息就不需要了吗?
    代理方法不应该改变原方法的固有特性~哦  就是说原来方法有返回值的 我就要return 一个object   没有的话就返回NULL
    但是既然是代理  既能代理有返回值的方法  也能代理没有返回值的方法啊  那是然会null还是返回一个object呢你不需要管返回什么,直接返回原方法的返回值就好了,它会处理的
    没有返回的(比如void)方法被代理以后返回就是null
      

  5.   

    什么时候调用方法后需要返回值啊 想不明白啊那你原方法为什么会有返回值?
    比如你原方法要返回一个信息,难道代理之后这个返回信息就不需要了吗?
    代理方法不应该改变原方法的固有特性~哦  就是说原来方法有返回值的 我就要return 一个object   没有的话就返回NULL
    但是既然是代理  既能代理有返回值的方法  也能代理没有返回值的方法啊  那是然会null还是返回一个object呢你不需要管返回什么,直接返回原方法的返回值就好了,它会处理的
    没有返回的(比如void)方法被代理以后返回就是null哦 好的 我自己在想想把 谢了