【发布时间】:2017-03-09 20:31:35
【问题描述】:
public class GenericMethods {
public <T> void f(T x) {
System.out.println(x.getClass().getName());
}
public static void main(String[] args) {
GenericMethods gm = new GenericMethods();
gm.f("");
gm.f(1);
gm.f(1.0);
gm.f(1.0F);
gm.f('c');
gm.f(gm);
}
}
/* Output:
java.lang.String
java.lang.Integer
java.lang.Double
java.lang.Float
java.lang.Character
GenericMethods */
public <T> void f(T x) 是什么意思?是返回类型吗?
但该函数实际上并没有返回任何东西。它指的是什么?我无法将它放在任何通用函数头类别下:如访问说明符、返回类型等。
【问题讨论】:
-
是泛型类型参数,声明方法是泛型的,仅此而已。见docs.oracle.com/javase/tutorial/java/generics/methods.html
标签: java