Есть несколько классов, они связаны друг с другом в виде дерева.
Т.е. например обьект класса A содержит коллекцию обьектов класса Б, а обьект класса Б содержит коллекцию обьектов Г и Д.
Есть метод-помошник для заполнения коллекций. Он нужное количество раз в цикле обращается к функции, создающей обьект и добавляет его в коллекцию. Метод этот статический.
Проблема вот в чем. Если в классе А определена коллекция ArrayList<Б>, то передать ее в метод-помошник я не могу — метод один, а коллекции для разных типов. Я могу передать туда эту коллекцию как ArrayList<? estends Object>. Но в этом случае при добавлении в коллекцию возникает ошибка "The method add(capture#3-of ? extends Object) in the type ArrayList<capture#3-of ? extends Object> is not applicable for the arguments (Object)".
Как можно добавить в коллекцию элемент в этом случае?