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.
