使用反射突破泛型限制
public class Test2 {
public static void main(String[] args) throws NoSuchMethodException, InvocationTargetException, IllegalAccessException {
//不是反射
List<String> list = new ArrayList<>();
list.add("李白");
list.add("杜甫");
//list.add(new Date())这是不可以的
//使用反射
Class<? extends List> aClass = list.getClass();
//获取add方法
Method add = aClass.getMethod("add", Object.class);
//赋值
add.invoke(list, new Date());
add.invoke(list, new Dog("小红",200,5.2));
System.out.println(list);
}
}