语法格式:类声明的时候类名的右边可以加上一对尖括号,尖括号中写一个泛型通配符;
注:只能用于声明( int i;声明),不能用于定义( i=10;定义);
泛型是一个不存在的类,它不能实例化;
下面用一个例子具体理解泛型的使用:
//不存在E这个类,把E看作一个类型模板,需要操作的模板。
public class MyList<E>{
Object[] valueList = {};
int size;
//泛型用于参数
public void add(E e){
valueList[size++] = e;
}
public E get(int index){
// valueList[index] 取出来就是Object类型 主动转为<E>类
return (E) valueList[index];
}
}
class Manage{
public static void main(String[] args){
// 使用MyList 创建对象时需要指定一个具体的类型
// 必须是一个类型
MyList<String> list = new MyList<String> ();
list.add (" A ");
String s = list.get (0);
s.hashCode ();
s.equals ()
// 泛型被指定为固定的类型之后,再使用这个对象的方法时,其中用到泛型的地方都会被替换为你所指定的类型
}
}