1.泛型介绍
- 泛型又称参数化类型,是JDK5.0出现的新特性,解决数据类型的安全性问题;
- 在类声明或实例化时只要指定好需要的具体的类型即可;
- Java泛型可以保证如果程序在编译时没有发出警告,运行时就不会产生ClassCastException异常。同时代码更加简洁和健壮;
- 泛型的作用是:可以在类声明时通过一个标识表示类中某个属性的类型,或者是某个方法的返回值的类型,或者是参数类型。
2.泛型的语法
1.泛型的声明
interface 接口{} 和 class 类<K,V>{}
说明:
- 其中,T , K , V不代表值,而是表示类型;
- 任意字母都可以,常用T表示,是Type的缩写;
2.泛型的实例化
要在类名后面指定类型参数的值(类型)
- List strList = new ArrayList();//这是对的
- Iterator iterator = customers.iterator();//这是错的
3.泛型使用的注意事项
- interface List{},public class HashSet{}…等等
说明:T和E只能是引用类型
看看下面语句是否正确?
List list = new ArrayList();
List list2 = new ArrayList(); - 在指定泛型具体类型后,可以传入该类型或者其子类类型;
- 泛型使用形式
List list = new ArrayList();
List list = new ArrayList<>(); //推荐使用这种简写
如果我们这样写,List list = new ArrayList(); ,默认给它的泛型是【 E就是Object】;