weixin_42361092
weixin_42361092
2014-08-28 10:25
浏览 216
已采纳

关于jdk动态代理和cglib的代理不同点的疑问

我主要的问题是CGLIB是生成了目标对象的子类,那是将代理对象重新复写了一遍吗,那这样的话,最终调用的是目标对象还是代理对象呢。

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

2条回答 默认 最新

  • flyfoxs
    flyfoxs 2014-08-29 13:02
    已采纳

    共同点:都会生成一个新的类.调用的当然都是,新生成的类.然后由新生成的类调用目标类,这才是代理模式.

    不同点:如果是Cglib代理Class,那么就是继承这个Class. 如果是动态代理,那么继承的就是Object,并且实现你所指定的接口.

    如果答案对你有帮助,请采纳.

    点赞 评论
  • nimasike
    温故而知新666 2014-08-28 11:37

    CGLIB是动态生成字节码,继承了你的目标类,返回一个子类给你。 你调用的话当让是代理类了。

    点赞 评论

相关推荐