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?