设计模式 - 动态代理原理及模仿JDK Proxy 写一个属于自己的动态代理
本篇文章代码内容较多,讲的可能会有些粗糙,大家可以选择性阅读。 本篇文章的目的是简单的分析动态代理的原理及模仿 JDK Proxy 手写一个动态代理以及对几种代理做一个总结。 对于代理模式的介绍和讲解,网上已经有很多优质的文章,我这里就不会再过多的介绍了,这里推荐几篇优质的文章作为参考: 给女朋友讲解什么是代理模式 轻松学,Java 中的代理模式及动态代理 另外,我的 github 仓库对应目录中也有相关的基础示例代码: https://github.com/eamonzzz/java-advanced... JDK Proxy 动态代理 动态代理的概念这里就不再阐述了;动态代理相对于静态代理来说,它的功能更加强大,随着业务的扩展,适应性更强。 在说动态代理原理之前,我们还是来看看动态代理的一般使用。 使用 本篇文章的使用示例,是以一个最为简单的代理模式的代码为例,相信大家在学习或了解代理模式的时候都有看到或者接触过这些代码。 先创建一个 Subject 主体抽象接口: /** * @author eamon.zhang * @date 2019-10-09 下午4:06 */ public interface Subject { void request(); } 再创建一个真实的主体 RealSubject 来处理我们的真实的逻辑: /** * @author eamon