Questions asked inline within codes.
class A1{}
class B1 extends A1{}
class C1 {}
public class X {
public void meth(List<? super B1> l){
l.add(new A1());//why this is not a valid syntax,why we can only add new B1() ?
}
public void meth2(List<? extends A1> l){
//and here, why can't we add anything ?
}
}