泛型三种:
? extends E:接收E类型或者E的子类型。
备注:由于个人能力有限,对于E表示的Element,Element到底是何含义,我通过查询API文档,将Element的含义罗列了一个到这里。由于Java的API文档中,对于Element关键字,有较多的解释,我不清楚我本人选择的这个解释是否正确。如有错误,恳请读者指出。谢谢
[1]ArrayList<T> al=new ArrayList<T>();指定集合元素只能是T类型
[2]ArrayList<?> al=new ArrayList<?>();集合元素可以是任意类型,这种没有意义,一般是方法中,只是为了说明用法
[3]ArrayList<? extends E> al=new ArrayList<? extends E>();
泛型的限定:? extends E:接收E类型或者E的子类型。
?super E:接收E类型或者E的父类型。
在Java泛型中
?代表不确定的java类型
T代表java类型
K、V 代表java键值中的key和value
E代表Element,表示一个程序元素,比如包、类或者方法。