A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

当方法中需要自己使用泛型参数时,就要定义? extends T
比如  void f(ArrayList<? extends Person>){方法中使用Person对象来操作容器中元素}
当方法需要对外界提供参数时,就要定义? super T
比如,Comparator接口中的compare方法(T,T),因为是向compare方法传递参数,所以必须要Comparator<? super T>,这样T类型才能传递给compare方法,要是Comparator<? extends  T>,
那么假如要比较Student,调用compare()方法,结果它限定的参数类型是Student的子类,无法传递。

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马