package org.my.java;
public class TestTypeVariable {
static <T,A extends T> void typeVarType(T t, A a){
System.out.println(a.getClass());
System.out.println(t.getClass());
}
public static void main(String[] s){
int i= 1;
typeVarType("string", i);
}
}
при запуске, следующий результат:
class java.lang.Integer
class java.lang.String
Как A
иметь тип Integer
, если он уже ограничен верхним значением String
?
Пожалуйста, объясните мне об этом.