Java泛型
泛型
什么是泛型
Java 泛型(Generics) 是 JDK 5 中引入的一个新特性。使用泛型参数,可以增强代码的可读性以及稳定性。
编译器可以在编译阶段对泛型参数进行检测,并且通过泛型参数可以指定传入的对象类型。比如 ArrayList<Persion> persons = new ArrayList<Persion>() 这行代码就指明了该 ArrayList 对象只能传入 Persion 对象,如果传入其他类型的对象就会报错。
并且,原生 List 返回类型是 Object ,需要手动转换类型才能使用,使用泛型后编译器自动转换。
泛型的使用方式有几种?
一般有三种使用方式:
-
泛型类:
//此处T可以随便写为任意标识,常见的如T、E、K、V等形式的参数常用于表示泛型 //在实例化泛型类时,必须指定T的具体类型 public class Generic<T>{ private T key; public Generic(T key) { this.key = key; } public T getKey(){ return key; } } 实例化泛型类: Generic<Integer> genericInteger = new Generic<Integer>(123456); -
泛型接口
public interface Dao<T> { // 与泛型类相似,在类名后面添加<T>,参数类型 void add(T t); T get(int index);} -
泛型方法
public <T> void f(T x) { // 泛型方法 System.out.println(x.getClass().getName()); }
项目中哪些地方用到了泛型
- 自定义接口通用返回结果
CommonResult通过参数T可根据具体的返回类型动态指定结果的数据类型 - 构建集合工具类(如List等)

浙公网安备 33010602011771号