Q1List <? super Object> list = new ArrayList <Object> ();
list.add(" "); // why this is allowed even when
String is NOT Super
//type of Object?
list.add(new Object());
Q2 List <? extends Object> lst = new ArrayList <Object> ();
lst.add(new Object()); // not allowed. Why?