黑马程序员技术交流社区

标题: 泛型中的上下限什么时候使用? [打印本页]

作者: 普哥    时间: 2014-7-6 23:47
标题: 泛型中的上下限什么时候使用?
泛型中的上下限什么时候使用?

作者: 陈云阳    时间: 2014-7-7 01:07
? extends E: 可以接受E类型或者E的子类型。 上限。
? super E:可以接收E类型或者E的父类型。 下限

这个只能靠敲代码经验了,只能意会不可言传,
用游戏版本升级来比喻吧
下限使用:
比如1.0版本  游戏场景1(先把游戏场景当成一个容器)  里面有一群怪物A,
到了2.0版本, 又开发了游戏场景2,里面有个BOSS,该BOSS继承自A,但是BOSS一般会有一俩个小弟围在身边,所以游戏场景2要接收该BOSS的父类怪物A,这时就使用了泛型下限。

上限使用
游戏版本1.0
游戏开始只有一种角色 战士A,在游戏场景1(该场景还是当做容器),但是以后的版本肯定会开发其他角色,
这些角色肯定继承一部分战士的功能,比如等级,经验条,所以该游戏场景1就使用了泛型上限,

不知道这么一说可明白



作者: 谭荣强    时间: 2014-7-7 13:20
让哥来;
上限 ? extends T存入对象时用,T是动物,当然可以存入狗,猫
下限 ? super T 取出时用,T狗,我当然可以说取出的是动物
一般的用法,别的不知道,先理解把




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2