泛型学习
第一步:认识一个简单的泛型类:
package test;
public class Calculator<MyType>
{
public MyType add(MyType a,MyType b){
return a;
}
}
package test;
public class CalcuTest {
public static void main(String arg[]){
Calculator<Integer> obj=new Calculator<Integer>(); //泛型类的调用
int iResult=0;
iResult=obj.add(12,13);
System.out.print(iResult);
}
}
l 类中的泛型变量(例子中的MyType)可以看做是一个java编译器所允许的临时占位符,代码真正被运行之前,要将对应占位符替代成为具体的数据类型。
l 泛型本质上是一种数据类型变量,它的任何一个值都代表一种具体的数据类型。含有这种变量的类称为泛型类(Calculator类)。
l 泛型类是一个不完整类,能够被编译器所编译,但使用之前必须给泛型变量赋值。使用具体的数据类型替代了泛型变量后的类是一个完整的类。
l 泛型类的调用是给类中的泛型变量赋值,每个值是一个具体数据类型。