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>
?