- 列表内容
11.3
public class AsListInference {
public static void main(String[] args) {
List<Show> list1 = new ArrayList<>();
list1.add(new Light());
list1.add(new Hervy());
// List<Show> list2 = Arrays.asList(new Light(), new Hervy());//报错
List<Show> list3 = Arrays.<Show>asList(new Light(), new Hervy());
}
}
class Show{}
class Powder extends Show{}
class Light extends Powder{}
class Hervy extends Powder{}
list2报错的原理是什么?
//TIJ中是这样描述的:list2创建时,Arrays.asList()中只有Powder类型,因此它会创建List而不是List;list3中,在Arrays.asList()中插入一条”线索“,这称为”显示类型参数说明“。