很少说,举个例子:
java
//jdk1.5之前 ArrayList n = new ArrayList(); //jdk1.5开始 ArrayList<String> m = new ArrayList<String>();
个人总结,泛型就是为了规定操做对象的类型而产生,由于在多态盛行的java中,不规定操做对象的类型,很容易出现转换(强转、暗装、自封装等)出错,而且这种出错在编译阶段不能发现,在运行时才报错。spa
泛型使用范围:code
一、类能够使用泛型对象
二、接口能够使用泛型继承
三、非静态方法能够使用泛型(静态方法如需使用泛型,需自行定义泛型,而不能使用声明类的泛型)接口
四、未知声明泛型使用<?>定义编译
五、泛型能够继承<? extend Person> <? super Person> class
六、方法泛型写在返回值前(修饰符后),其余状况泛型紧跟类型以后。泛型