Приветствую. Имеется List<CellSpec>, где CellSpec - интерфейс. Далее, имеется класс DefCellSpec, реализующий вышеупомянутый интерфейс.
Вопрос: почему, когда я передаю в метод: boolean checkCellSpec (List<CellSpec> specList) список List<DefCellSpec> - компилятор ругается на несоответствие типов?
Притом если передавать один объект - то все ок.
Если создать новый лист по принципу:
List<CellSpec> specList = new ArrayList<>();
defCellSpecs.forEach(defCellSpec -> specList.add(defCellSpec));
и уже его передавать в вышеупомянутый метод, то также все ок, но выглядит как костыль.