Java学习第二期:Java基础知识(3)
java泛型:
Java泛型时JDK5中引入的一个新特性,泛型提供了编译时类型安全检测机制,该机制允许程序员在编译时检测到非法的类型。泛型的本质时参数化类型,也就是说所操作的数据类型被指定为一个参数。
Java的泛型是伪泛型,这是因为Java在编译期间,所有泛型信息都会被擦掉,这也就是通常所说类型擦除。
类型擦除详细介绍参考文献:《Java泛型类型擦除以及类型擦除带来的问题》
泛型有三种使用方式:
1. 泛型类:
public class Generic<T>{
private T key;
public Generic(T key) {
this.key = key;
}
public T getKey(){
return key;
}
}
在实例化泛型类时,必须指定T的具体类型:
Generic<Integer> genericInteger = new Generic<Integer>(123456);
2. 泛型接口:
定义一个泛型接口
指定一个具体类型为Integer的实现类
指定一个具体类型为String的实现类
实现:
3. 泛型方法:
4. 常用的通配符:T,E,K,V,?
?: 表示不确定的 java 类型
T : (type) 表示具体的一个java类型
K V : (key value) 分别代表java键值中的Key Value
E :(element) 代表Element
有关Java泛型中通配符可以查看文章:《聊一聊-JAVA 泛型中的通配符 T,E,K,V,?》