java泛型里面的<? extends > <? super> <?> 有通俗易懂的方法理解吗?求大神指教!
ringa_lee
ringa_lee 2017-04-17 17:24:46
[Java讨论组]

看java编程思想,这部分纠结了有一段时间了,到现在都没有头绪!

ringa_lee
ringa_lee

ringa_lee

全部回复(2)
阿神

a super b a是b的父
a extends b a是b 的后代
? 不确定类型

天蓬老师

? super T 表示一个特定的类,这个类可能是T,也可能是T的父类或者超类,甚至OTject

  • 你可以将T或者T的子类的实例赋值给这个"变量",因为T或者T的子类 肯定是一个OTject(或者其他任何T的超类)

  • 但你无法将这个"变量"赋值给其他"变量",因为无法确定这个"变量"的具体类型

? extends T 表示一个特定的类,这个类可能是T,也可能是T的任意子类

  • 你可以把这个"变量"赋值给任意用T或者T的超类声明的"变量"

  • 但你无法为这个"变量"赋值,因为根本无法知道这个"变量"的类到底是T还是T的哪个子类

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号