interface Receiver {
    public <T extends HasId> void doSomethingWithList(List<T> list);
}
also,
class SubClass implements HasId {}
but
List<SubClass> list = getList();
receiver.doSomethingWithList(list);
fails to compile, complaining doSomethingWithList is not applicable for the arguments List<SubClass>
Where's my mistake?
 
     
     
     
    