Java 泛型与集合知识点总结
泛型
泛型的应用
- 在编译时通过一个标识表示类中某个 属性/方法/参数 的类型
- 编译时,检查添加元素的类型,提高安全性
- 减少类型转换的次数,提高效率
泛型的语法
1.泛型的声明
-
泛型类
class 类名<K, V> {}
interface 接口 {}
-
泛型方法
-
泛型方法可以定义于普通类或泛型类(区别方法使用泛型)
public static T getMiddle(T… a) { }
2.泛型的使用
- 实例化
在类名后面指定类型参数的值(类型):
List strList = new ArrayList ();
- 调用泛型方法
调用泛型方法时,可以把<具体类型> 放在方法名前面:
类.getMiddle()
泛型使用细节
-
参数类型只能是引用类型,不能是基本类型
-
不能创建参数化类型的数组
-
在给泛型指定具体类型后,可以传入该类型或者其子类类型
-
没有指定类型是,默认泛型是 Object
-
静态方法不能使用类的泛型
静态和类相关,类加载时,对象还没创建,如果静态方法使用了类的泛型,JVM 就无法完成初始化
-
泛型不具备继承性
<