首页 > 代码库 > java泛型
java泛型
Java中的泛型(Generic Type)
基本精神:数据类型参数化
集合框架中没使用泛型和使用泛型的比较
没使用泛型
List myIntList = new LinkedList(); // 1
myIntList.add(new Integer(100)); // 2
Integer x = (Integer) myIntList.iterator().next(); // 3
使用泛型
List<Integer> myIntList = new LinkedList<Integer>(); // 1‘
myIntList.add(new Integer(0)); // 2‘
Integer x = myIntList.iterator().next(); // 3‘
自己编写一个泛型类
public class MyTest<T> {
private T var;
public T getVar() {
return var;
}
public void setVar(T var) {
this.var = var;
}
public void print()
{
System.out.println(var);
}
}
泛型的规则和限制
通过上述的例子,我们简单理解了泛型的含义。在使用泛型时,请注意其使用规则和限制,如下:
1、泛型的参数类型只能是引用类型,而不能是简单类型。
比如,<int>是不可使用的。
2、可以声明多个泛型参数类型,比如<T, P,Q…>,同时还可以嵌套泛型,例如:<List<String>>
3、泛型的参数类型可以使用extends语句,例如<T extends superclass>。
4、泛型的参数类型可以使用super语句,例如< T super childclass>。
5、泛型还可以使用通配符,例如<? extends ArrayList>
java泛型