2004年10月Sun公司发布了JDK1.5版本,代号Tiger。同时在对该版本增加了了泛型支持,而在这之前,如
果把一个对象丢进一个集合里面,集合由于会忘记对象的类型,于是把所有的类型当成Object对象处理,当
程序从集合中取出对象后,就需要进行强制类型转化,同时容易引发ClassCastException异常。
增加了泛型后,当然最大的好处就是少些了代码,并且使得代码更加健壮。如下:
public class Utils<T> {
private T col;
public Utils() {
};
public Utils(T col) {
this.col = col;
}
public T getCol() {
return col;
}
public void setCol(T col) {
this.col = col;
}
}
public class test {
public static void main(String[] args) {
Utils<String> util_1 = new Utils<>("我是一个泛型对象");
System.out.println(util_1.getCol());
Utils<Integer> util_2 = new Utils<>(5);
System.out.println(util_2.getCol());
}
}
打印结果如下
我是一个泛型对象
5
否者,你要达到上面的效果,你的需要些两个类,一个将T改为String类型,另一个改为int类型。况且,如
果是除了int和String其它类型的变量,你还不的累死。