Are they exactly the same or used for different situations?
public List<? extends Object> do(){
return ...
}
VS
public List<Object> do(){
return...
}
Are they exactly the same or used for different situations?
public List<? extends Object> do(){
return ...
}
VS
public List<Object> do(){
return...
}
Those are not the same.
A List<? extends Object>
may be a list of any type.
Since you don't know what type the list actually contains, you can't put anything into it.