泛型是编译期特性,你只要记住加上就是约束了、限制了,编译
期只能加某个类型的对象,计算编译期限制了,实际上在运行
期还能把泛型擦除的,可以把泛型理解为一种约束即可。
但是运行期就算加了苹果,运行期还可以装橘子。
ArrayList list = new ArrayList();
list.add(person);
list.add(animal);
List<Student> list = new ArrayList<Student>();
这里的泛型如果为<?> 可以为任何的对象
如果这里的泛型为<Student> 就只能添加Student对象的属性