Вот проблема, с которой я пытался найти решение.
У нас есть два определения класса. Один из двух расширяет другой.
class T{}
class TT extends T{}
Требование состоит в том, что должен существовать список, в котором хранится объект. T <
List<? extends T> list = new ArrayList<>();
Но проблема возникает, когда я пытаюсь поместить объект TT (едва ли он является подклассом T)
в список.
list.add(new TT());
Сообщение об ошибке компиляции
Метод add (capture # 2-of? extends Cell) в типе List не применим для аргументов (Cell)