后端岗位面试题更新 2026-08-05
JDK 动态代理和 CGLib 代理分别是什么?它们有什么区别?
数字马力后端开发互联网/IT技术原理技术选型
考察说明
考察对两种动态代理实现机制及其适用场景的理解
回答思路
- 说明 JDK 代理基于接口,通过反射调用 InvocationHandler
- 说明 CGLib 通过继承生成子类并重写方法
- 指出 JDK 代理要求目标类实现接口,CGLib 可代理无接口类
- 强调 CGLib 对 final 类或 final 方法的限制
- 解释 Spring 中基于接口选择代理方式的默认策略
本题附完整参考答案与评分标准
登录后可查看结构化答题指导;也可以直接开一场模拟面试,AI 面试官用本题实时追问并给出评分。