泛型:泛型的本质是参数化类型,也就是说所操作的数据类型被指定为一个参数。
该参数类型可以用在类,接口和方法的创建中,分别为泛型类,泛型接口,泛型方法。
泛型的好处是安全简单。
泛型的形式:
class Dog<E>:声明一个泛型类Dog,其中E可以使用任意一个具体类型替代,泛型类型
往往使用一个大写字母表示。
public boolean add(E o):E是泛型,也就是说,使用
add方法时,可以为其传递任意一种类型的参数。其中此处的E是在类中定义的
.
安全性:
在编译的时候检查类型安全,并且所有的强制转换都是自动和隐式的,提高代码的重
用率。消除代码中的强制类型转换,同时获得一个附加的类型检查层,该检查层可以
防止有人将错误类型的值保存在集合中
泛型类:
public class Gen<E> {
private E atr;
}
用法与数据类型相似
泛型方法:
要定义泛型方法,只需将泛型参数列表置于返回值之前
public <E> E getX(E x){
return x;
}注意:是否拥有泛型方法,与其所在的类是否泛型没有关系。要定义泛型
方法,只需将泛型参数列表置于返回值前。
泛型接口:
泛型接口,与泛型类完全相同