java中的泛型理解
泛型的命名
像K,V,T这种泛型,在代码中经常出现。其实作用和Object类的作用差不多
比如下面这个类,这里的T和F可以随便命名,他们的意思就是说Auto对象实例的t和f属性的类型可以随便传入。相当于wt和wf都是Object类型
。
public class Auto<T,F> {
T t;
F f;
public F doing(T o){
return f;
}
}
上面的代码和下面的代码意思是一样的
public class Auto {
Object wt;
Object wf;
public Object doing(Object o){
return wf;
}
}
使用的时候没有什么区别,只是如果使用了泛型T,使用的时候可以指定具体类型。调用实例方法的时候编译器会帮你检测你传入的类型是否符合要求
public static void main(String[] args) {
Auto auto = new Auto();
Object doing = auto.doing(1);
}