黑马程序员技术交流社区

标题: 泛型<? super E>的实际应用? [打印本页]

作者: 林志进    时间: 2012-10-25 23:11
标题: 泛型<? super E>的实际应用?
在泛型中,我们将<? super E>定义为下限,只要是E或者E的父类都可以满足条件。
实际应用中,假设父类Father 定义了两个子类 SonOne,SonTwo
我们构建了个集合,TreeSet(Comparator<? super E> comparator) ,在这里传入参数TreeSet<Comparator<Father> compator>
那么他的子类SonOne或者SonTwo的集合都可以使用这个comparator进行排序了。
这样跟<? extends E>有什么区别呢,只要是E或E的子类就能满足条件了?



作者: 唐进    时间: 2012-10-25 23:19
TreeSet(Comparator<? super E> comparator)里面的?是代表E的子类,而你TreeSet<Comparator<Father> compator>其中Father是SonOne和SonTwo的父类,用父类指向子类是可以的,实现了多态性,只是运行的时候会执行子类的方法,所以能满足条件




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