当前位置: 首页> 文旅> 酒店 > Java泛型理解这一篇就够了

Java泛型理解这一篇就够了

时间:2025/7/9 0:56:41来源:https://blog.csdn.net/lucky_she_niu/article/details/140716768 浏览次数:0次

好文推荐,请阅读此文:Java泛型最佳实践 

总结:

泛型类

泛型接口

泛型函数

通配符

通配符是为了让Java泛型支持范围限定,这样使得泛型的灵活性提升,同时也让通用性设计有了更多的空间。

  • <?>:无界通配符,即类型不确定,任意类型
  • <? extends T>:上边界通配符,即?是继承自T的任意子类型,遵守只读不写
  • <? super T>:下边界通配符,即?T的任意父类型,遵守只写不读

上边界通配符只读不写,下边界通配符只写不读到底是什么意思,用最简单的话来说

  • <? extends T>上边界通配符不作为函数入参,只作为函数返回类型,比如List<? extends T>的使用add函数会编译不通过,get函数则没问题
  • <? super T>下边界通配符不作为函数返回类型,只作为函数入参,比如List<? super T>add函数正常调用,get函数也没问题,但只会返回Object,所以意义不大

什么时候用通配符,如果参数泛型类即要读也要写,那么就不推荐使用,使用正常的泛型即可,如果参数泛型类只读或写,就可以根据原则采用对应的上下边界,是不是十分简单,最后再说一次读写的含义,这块确实很容易晕

  • 读:所谓读是指参数泛型类,泛型只作为该参数类的函数返回类型,那这个函数就是读,List作为参数泛型类,它的get函数就是读
  • 写:所谓写是指参数泛型类,泛型只作为该参数类的函数入参,那这个函数就是写,List作为参数泛型类,它的add函数就是写

关键字:Java泛型理解这一篇就够了

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

责任编辑: