E - Element (在集合中使用,因为集合中存放的是元素)
T - Type(Java 类)
K - Key(键)
V - Value(值)
N - Number(数值类型)
? - 表示不确定的java类型(无限制通配符类型)
S、U、V - 2nd、3rd、4th types
Object - 是所有类的根类,任何类的对象都可以设置给该Object引用变量,使用的时候可能需要类型强制转换,但是用使用了泛型T、E等这些标识符后,在实际用之前类型就已经确定了,不需要再进行类型强制转换。
不好意思,我提一个自己的想法, 上文中E、 T等等应该都是表示类型变量吧 我在集合里面也能用T啊 Collection<T> 这里T也能表示“在集合中使用,因为集合中存放的是元素” 所以没必要区分这么多。你觉得呢?
确实没必要区分那么多吧,差不多就是一种标识,在导入、操作中对元素类型进行特定类型的限制(因为老是需要由Object转换太过于麻烦了,干脆一开始就定义好类型),但这也仅仅是在操作中起限制作用,编译成*.class会有类型擦除现象,这方面需要多留意一下。
这一章在java基础知识关键字中已经写过了