什么叫泛型?
Java泛型是JDK5中引入的一个新特性,泛型提供了编译时类型安全监测机制,该机制允许程序员在编译时检测到非法的类型.其本质是参数化类型,也就是说所操作的数据类型被指定为一个参数(type parameter)这种参数类型可以用在类、接口和方法的创建中,分别称为泛型类、泛型接口、泛型方法。
泛型方法
写一个泛型方法,在方法调用的时候传入不同类型的参数.编译器通过传递的泛型方法的参数类型来处理每一个方法调用.
如,使用泛型方法可以实现,当我们写一个泛型方法来对一个对象数组排序,然后调用该泛型方法可以对整数数组、浮点型数组、字符串数组等进行排序。
定义泛型方法的规则:
- 所有的泛型方法都有一个类型参量声明部分
<>
- E 是类型变量(Type Variable),变量名一般要大写
- E 在定义时是形参
实例
public class test {
//泛型方法returnArray
public static <E> void printArray(E[] intputArray){
for(E element : intputArray){
System.out.println(element);
}
}//end printArray
public static void main(String[] args){
Integer[] intArray = {1,2,3,4,5,6,7};
Character[] charArray = {'e','r','t'};
printArray( intArray );
printArray( charArray );
}
}
运行结果:
实例2:有界的
限制被允许传递的类型参量的类型种类范围
extends
泛型类/泛型接口
在类名/接口名后面加上泛型类型参数T,这样就定义了一个泛型类/泛型接口。参数间用逗号隔开