Dynamic Proxy

  • JDK 动态代理踩坑

    这篇文章围绕学习 JDK 动态代理时遇到的几个典型困惑展开,通过一组示例代码解释动态代理背后的运行机制。正文重点讨论了 Proxy.newProxyInstance() 中 ClassLoader 参数为什么看起来“随便填都能用”、为什么代理对象常常会触发 $Proxy0 cannot be cast to xxx 的类型转换错误,以及 InvocationHandler.invoke() 方法里 Object proxy 参数实际指向什么。文章通过逐个分析错误示例和代理类生成后的调用方式,把这些容易混淆的细节串起来,帮助理解 JDK 动态代理的正确用法。

    2021年1月1日
    1.6K0