1.关于泛型的形式参数
package test; import java.util.ArrayList; import java.util.List; public class GenericTest { public void m1(List<Object> list) { } public void m2(List<? extends Object> list) { } public void m3() { // 正确,ArrayList是List的之类,可以正确赋值 m1(new ArrayList<Object>()); // 错误,列表的元素是Object,不是String // 可以这么说,ArrayList<Object>是继承List<Object>,但是ArrayList<String>是没有继承List<Object>的 m1(new ArrayList<String>()); // 正确,这个的意思是,列表里的元素是继承自Oject的,明显,String是继承自Object的(其实形参可以写成List<?> list) m2(new ArrayList<String>()); } }