一.深入泛型
1、概述:
可以在编译阶段,约束只能操作某种数据类型的。 集合都是泛型的形式。
List list = new ArrayList<>()
2、自定义泛型类
注意:定义泛型类时,申明了泛型,就是 自定义泛型类
备注:泛型变量可以使用 E T K V
3、自定义泛型方法:
定义方法的时候同时申明了泛型,这个方法就是泛型方法
泛型:public static <T> T getMax(T[] arr)
4、自定义泛型接口
定义接口的时候使用了泛型,这个接口就是泛型接口
格式: 修饰符 interface 接口<E> { void add(E e) }
约束实现类,在实现泛型接口的时候,可以传输操作的数据类型,这样从写的方法都将是针对该类型的操作。
5、泛型的通配符和上下限:
通配符? : 在使用泛型的时候代表一切类型。
注意: E T K V 在自定义的时候使用的。