泛型是JDK1.5版本以后出现的新特性,用于解决安全问题,是一个安全机制
一:泛型的好处
1:将运行时期出现问题ClassCastException,转移到了编译时期,方便程序员解决问题,让运行时间问题减少,安全
2:避免了强制转换的麻烦
反省格式:通过<>来定义要操作的引用数据类型,使用集合框架时,定义泛型很常见,当使用集合时,将集合中要存储的数据类型作为参数传递到<>中即可
3:什么时候使用定义泛型类
当类中要操作的引用数据类型不确定的时候
二:如何定义泛型
1:在类上定义泛型
class Demo<T>{}
2:在方法上定义泛型
public <T> void method(T t){}
3:在静态方法上定义泛型
public static <T> void methdo(T t){}
4:定义接口上的泛型
interface m<T>{ T method();}
三:使用集合框架时,迭代器上的泛型
List <String> m=new ArrayList<String>
Iterator<String> it=m.iterator();
//迭代器上的泛型的类型必须和集合框架保持一支
四:泛型的通配符:
1.上边界<? extends superclass>
2.下边界<? extends subclass>