Java泛型E T K V等的含义

基础泛型标识含义

在使用泛型标识后,在使用之前类型就被确定,不需要进行类型的强制转换了.
E ----- Element(元素 ,集合中使用)
T ----- Type(类型 ,类)
K ----- key(键)
V ----- Value(值)
N ----- Number(数值类型)
? ----- 不确定的java类型

T,Class<T>,Class<?>的区别

T是具体的类,是String,Integer等等
Class<T>在编译前确定具体的类
Class<?>是个通配泛型,?可以代表任何类型,主要用于声明时的限制情况

public static <T> T m(Class<T> cla){
}

<T> 和传入的参数 Class<T> cla对应,表示返回值是一个泛型,后面的T是表示返回值类型

<? extends T> 和 <? super T>

<? extends T> 表示类型的上界,参数类型是T或T的子类。
<? super T> 表示类型下界,参数类型是T或T的父类型。
如果频繁往外读取内容,适合用上界Extends
如果频繁插入内容,适合用下界super

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。