平时看java源代码的时候,如果碰到泛型的话,我想?
T
K
V
E这些是经常出现的,但是有时想不起来代表什么意思,今天整理下:
?
表示不确定的java类型。
T
表示java类型。
K
V
分别代表java键值中的Key
Value。
E
代表Element。
Object跟这些东西代表的java类型有啥区别呢?
Object是所有类的根类,是具体的一个类,使用的时候可能是需要类型强制转换的,但是用T
?等这些的话,在实际用之前类型就已经确定了,不需要强制转换。
通配符
?
是未知类型属于泛型,t是具体类型,和?有包含关系
如果t是?的子类的话可以转换,否则不可以