由于java是种强类型静态语言,在执行时无法动态生成代码,静态语言基本都有这特性 动态生成代码有几种好处,也是弱类型语言的优点 1.部份逻辑可以实现热更新 2.远程调用实现非常适合 3.能动态生成扩展类,屏蔽复杂性,在原来基础上扩展功能,无破坏源码特性 静态语言也不是没有方案去解决,解决方案很多. 其中嵌入一个脚本引擎语言,就能弥补,还有动态代理技术 jdk 自带的动态代理是一种解决方案 cglib动态代理 spring默认使用 javassit 能在执行期修改class 顺便说下scala语言…