Consider below method doSomething(List<Object>) which accepts List<Object> as parameter.
private void doSomething(List<Object> list) {
    // do something
}
Now consider below code snippet which tries to call doSomething() where I try to pass List<String> to doSomething()
List<Object> objectList;
List<String> stringList;
doSomething(stringList); // compilation error incompatible types
doSomething(objectList); // works fine 
Even below code throws compilation error
objectList = stringList;  // compilation error incompatible types
My question is why List<String> can not be passed to a method which accepts List<Object>?
 
     
     
     
     
     
     
     
     
    