one question about Generics
Posted: Sat Mar 22, 2014 12:36 am
I just tried the code below. I thought it should throw an exception at line A because intlist is declared as a list of Integers. But the result surprised me: it works well, printing "10 20 hello". Do you know why?
List<Integer> intList = new ArrayList<>();
intList.add(10);
intList.add(20);
List list = intList;
list.add("hello"); // line A
System.out.println(list);
List<Integer> intList = new ArrayList<>();
intList.add(10);
intList.add(20);
List list = intList;
list.add("hello"); // line A
System.out.println(list);