Как мне добиться, чтобы метод getFoo() в реализующем классе возвращал список типа того же реализующего класса.
public interface Bar{
....
List<? extends Bar> getFoo();
}
Сейчас класс, реализующий Bar, возвращает объекты любого класса, реализующего Bar. Я хочу сделать строже, чтобы класс, реализующий Bar, возвращал список объектов только своего типа в getFoo().