Java API 文档问题:“<T>”、“<K,V>”等指什么?

最近研究 Java API 文档,发现里面的参数、返回值常常出现像“<T>”、“<K,V>”、“<E>”这样的字眼,这代表什么类型?有什么含义?

在 java.util 包中,AbstractMap 类的所有子类都附加了这样的符号,我猜想是不是表示这样的一个类是一个可以保存和查找 键-值 对应的类?

而所有 AbstractCollection 类的子类都有“<E>”符号,这是不是表示它包含一个枚举类型?

像 Comparable 类后面有一个“<T>”,这又代表什么?

另外像 Class 类的 getDeclaredMethod 方法,参数说明是:
(String name, Class... parameterTypes)
省略号是什么意思?

还有 Method 类的 getParameterTypes() 方法返回值是 Class<?>,问号又代表什么?

望达人指教!

第1个回答  2006-10-26
是泛型
举个例子
以前用ArrayList存int的时候
ArrayList list=new ArrayList();
list.add(new Integer(10));
int a=(Integer)(list.get(0)).intValue();

很麻烦
现在
ArrayList<Integer>list=new ArrayList<Integer>();
list.add(10);
int a=list.get(0);
只保存Integer类型的变量,但是不能是原始类型int不行

Java1.5中还有的功能 auto boxing/unboxing自动装箱/拆箱功能
现在可以int a=new Integer(10);
所以就有了list.add(10)相当于list.add(new Ingeter(10));
第2个回答  2006-10-26
表示范型,你在用的时候可以在<>里写上自己的类型,比如ArrayList<int>等等,表示的是任意的一个类型
有省略号是参数的个数是可变的,你给它传任意个参数都是可以的本回答被提问者采纳
第3个回答  2006-10-28
同意

欢迎广大java爱好者加入群一起讨论:30745246
第4个回答  2006-10-26
同意!

Java API 文档问题:“<T>”、“<K,V>”等指什么?
只保存Integer类型的变量,但是不能是原始类型int不行 Java1.5中还有的功能 auto boxing\/unboxing自动装箱\/拆箱功能 现在可以int a=new Integer(10);所以就有了list.add(10)相当于list.add(new Ingeter(10));

面试官问:Java泛型中T、E、K、V、?通配符,你确定都了解吗?
总结来说,理解和正确使用Java泛型中的T、E、K、V、?通配符,对于编写安全、灵活且可维护的代码至关重要。掌握这些概念和技巧,能够帮助开发者在编程时避免许多潜在的问题,并提升代码的质量。

JAVA 中<t>是什么意思,
JAVA 中<t>是泛型的意思。意思是Tree这个类里面需要用到另外一个类,但是又不能确定要用到的那个类的具体类型,所以暂时用T来代替。当具体的程序知道要用到的那个类型是什么的时候就用那个类型来代替T,例如需要实例化一个Tree类,需要用到的那个类是String,那么就可以这么来实例化Tree<String>()。

java中<T>问题
太广泛了,<T>指泛型,泛型其实指得就是参数化类型,使得代码可以适应多种类型。像容器,List< T >,大量使用了泛型,它的主要目的之一就是用来指定容器要持有什么类型的对象

你真的了解JAVA中的泛型E、T、K、V吗?
字母都可以,并不会影响程序的正常运行。但是如果换成其他的字母代替 T ,在可读性上可能会弱一些。通常情况下,T,E,K,V,?是这样约定的:?表示不确定的 java 类型。T (type) 表示具体的一个java类型。K V (key value) 分别代表java键值中的Key Value。E (element) 代表Element。

Java 里面<T>T 是什么意思?
T是代表任意一种类型,这是泛型里的问题,<T>是一种形式,表示你用的是泛型编程,不受类型的约束

java中的接口名字后面有<t>是什么意思
泛型 java后面的版本才有 如 public Interface Test<T extends String> T是String的子类 List<String> list里面只能存储String或其子类

JAVA泛型和通配符,再也不用每次百度了
定义泛型类,可以在类中引入类型变量,类型变量指的T, U这些,用尖括号<>括起来, 跟在类名后面。多个类型变量可以用逗号分隔。在类中的方法和返回值等地方可以使用类型变量。类型变量采用大写形式,要求简短,一般E表示集合的元素类型,K和V表示key和value等。泛型类使用:例如使用类型变量定义一个Point...

java中<T>问题
2.定义简单Java泛型 其实Java的泛型就是创建一个用类型作为参数的类。就象我们写类的方法一样,方法是这样的method(String str1,String str2 ),方法中参数str1、str2的值是可变的。而泛型也是一样的,这样写class Java_Generics<K,V>,这里边的K和V就象方法中的参数str1和str2,也是可变。下面看看例子: ...

java 泛型<?> 与 <T> 有什么区别?
使用<T>来声明类型持有者名称,自定义泛型类时,类持有者名称可以使用T(Type),如果是容器的元素可以使用E(Element),若键值匹配可以用K(Key)和V(Value)等,若是<?>,则是默认是允许Object及其下的子类,也就是java的所有对象了。

相似回答
大家正在搜