Java 23 种设计模式:从踩坑到精通 | 番外:代理 vs 装饰器 —— Spring AOP 到底用了哪个?摘要:代理模式和装饰器模式是最容易被混淆的结构型模式,它们都持有目标对象的引用,都能在方法调用前后添加逻辑。但Spring AOP 用的是代理模式,Java I/O 流用的是装饰器模式。它们的核心区别是什么?本文从代码、UML、框架源码三个维度深度对比,结合 Spring AOP 的 JdkDynamicAopProxy 和 BufferedInputStream 的源码,帮你彻底分清这对“孪生兄弟”。