类型擦除不会擦除所有类型信息。它不会从类,字段,返回类型和参数定义中将其删除。保留以下示例中的类型信息:
public class Foo extends List<Bar> { ..}private List<Foo> foos;public List<Foo> getFoos() {..}public void doSomething(List<Foo> foos) {..}这是可以通过反射实现的
java.lang.reflect.ParameterizedType。您可以检查给定的
Type是否
instanceof是该类,将其强制转换为该类并获取类型信息。



