我正在玩java中的模板和泛型。使用模板方法,我可以将它们定义为模板,而无需在方法signiture中实际使用模板类型。 但是,由于模板类型是在运行时调用方法时定义的,它如何使用?
示例如下:
import java.util.ArrayList;
import java.util.List;
public class Playaround {
public static void main(String[] args) {
Playaround p = new Playaround();
p.doSomething(p);
}
public <T> void doSomething(Object thing) {
List<T> list = new ArrayList<T>();
// What kind of object fit in this list?
// list.add(...?...)
System.out.println(list.size());
}
}
或者,如果这根本不是有用的代码 - 为什么要编译?