代理模式的概念

Posted 奋斗的孩子

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了代理模式的概念相关的知识,希望对你有一定的参考价值。

代理模式:就是在不修改目标对象的基础上使用代理对象增加目标对象功能的。

根据代理对象与目标对象之间的 关系,代理关系产生的时机可以分为二类:静态代理与动态代理

静态代理:在程序运行前,代理类与目标类之间的代理关系就已经确立了,从代码上看:有代理类的才是静态代理,比如公司与法律顾问

动态代理:程序运行时才产生代理关系,从代码上看:没有代理类,只有代理对象的才是动态代理(代理对象是有代理工厂或者代理工具生成的),比如个人与律师

动态代理分jdk的动态代理和CGLIB动态代理

jdk的动态代理与cglib动态代理的区别:

jdk的动态代理解决的问题是目标对象实现了某个接口,如果目标对象没有实现接口,jdk的动态代理就无法解决。

cglib动态代理解决的问题是目标类没有实现的接口,我们要生成代理对象的问题

 

以上是关于代理模式的概念的主要内容,如果未能解决你的问题,请参考以下文章

Java静态代理和iOS代理模式这两个概念的理解上的疑惑

代理模式-Proxy

设计模式-代理模式

Java代理模式

23中设计模式之-代理模式

设计模式之--静态代理及动态代理模式