有一个类:
static class Test<T> {
T t;
<P> P get(P p) {
return p;
}
}
如果它的方法是这样调用的,那么一切都很好:
Test<String> test = new Test();
int i = test.get(1);
如果从类中删除泛型类型,则会发生错误:
Test test = new Test();
int i = test.get(1);//error - java.lang.Object cannot be converted to int
为什么会有这样的行为?全局泛型类型 T 与方法 P 中的内容有何关联?