模型服务连接失败
系统设计Java
分类
Java JVM
难度
未设置
来源数
1
更新时间
2026/03/29 15:43

答案

JDK Proxy要求代理类必须实现接口,而CGLIB是完全不受这个限制的。 JDK Proxy是java自带的功能,无需引入第三方类,通过拦截器加反射实现,使用比较简单。 而CGLIB是第三方提供的工具,基于ASM,性能较高,它通过给指定目标类生成一个子类,覆盖它的方法来实现增强,因此不能对final修饰的类进行代理。

元信息

审核状态: active
关联来源: 1

来源面经题(0)

这道题目前没有手动沉淀的面经题来源。

来源(1)

Java八股(框架).md

knowledge_note
Question 25: CGLIB 和 JDK Proxy 的区别? Source answer: JDK Proxy要求代理类必须实现接口,而CGLIB是完全不受这个限制的。 JDK Proxy是java自带的功能,无需引入第三方类,通过拦截器加反射实现,使用比较简单。 而CGLIB是第三方提供的工具,基于ASM,性能较高,它通过给指定目标类生成一个子类,覆盖它的方法来实现增强,因此不能对final修饰的类进行代理。 Reviewed answer: JDK 动态代理要求目标类实现接口;CGLIB 通过生成子类代理,不依赖接口,但不能代理 final 类或 final 方法。JDK 是原生方案,CGLIB 基于字节码增强。