栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

Java的桥接方法和BridgeMethodResolver使用

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Java的桥接方法和BridgeMethodResolver使用

什么是桥接方法

桥接方法是JDK1.5引入泛型之后,为了使Java的泛型方法生成的字节码和1.5版本前的字节码相兼容,由编译器自动生成的方法。
对于实现了泛型接口或继承了泛型抽象类的类,如果没有桥接方法,则在编译器对泛型进行擦除后,不符合语义:泛型擦除后,泛型类型成了Object,如果子类没有一个对应的桥接方法(泛型类型成了Object的方法),则认为是不符合语义,且不兼容1.5之前的字节码了。同样子类的返回值如果是父类的返回值的子类型,也需要一个桥接方法。

什么时候生成桥接方法
  • 方法重写的时候子父类返回值不一致

  • 子类重写了父类或接口带有泛型的方法

寻找被桥接方法

利用Spring的工具类BridgeMethodResolver

public static Method findBridgedMethod(Method bridgeMethod);
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/439547.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号