java 泛型
没有泛型的年代
// 没有泛型时,如下这样写是不会报错的,现在这样写也不会报错,但是编译器会警告
public static void main(String[] args) {
List list = new ArrayList();
list.add(new Object());
list.add(1);
list.add("foolish");
}public class Main {
public static void main(String[] args) {
ListString list = new ListString();
list.add("泛型");
}
static class ListString {
List list = new ArrayList();
public void add(String s) {
list.add(s);
}
public int size() {
return list.size();
}
public String get(int i) {
return (String) list.get(i);
}
}
static class ListInt {
List list = new ArrayList();
public void add(int s) {
list.add(s);
}
public int size() {
return list.size();
}
public int get(int i) {
return (int) list.get(i);
}
}
}为什么说 java 泛型是“假泛型”
擦除带来的问题
泛型的绑定
Last updated