关于泛型的基本介绍和理解请参考以下几篇文章,或查询更多资料:
本篇以简单的List<>方式来进行说明。
ArrayList继承了List,
ArrayList没有继承List
List>等价于List extends Object>
请参考以下代码:
/**
* author Ding Chengyun
* 2014-2-27
*/
package test;
import java.util.ArrayList;
import java.util.LinkedList;
import java.util.List;
/**
* @author Ding Chengyun
* 2014-2-27L
*/
public class ListTest {
public void method1(List list) {
}
public void method2() {
method1(new ArrayList());
method1(new ArrayList()); //会编译报错
method1(new LinkedList());
}
public void method3(List extends Object> list) {
}
public void method4() {
method3(new ArrayList());
method3(new ArrayList());
method3(new LinkedList());
}
public void method5(List> list) {//泛型中?等价于? extends Object
}
public void method6() {
method5(new ArrayList());
method5(new ArrayList());
method5(new LinkedList());
}
/**
* @param args
*/
public static void main(String[] args) {
List list = new ArrayList(20);
}
}
原文:http://blog.csdn.net/sundenskyqq/article/details/27788705