Итак, у меня есть этот метод:
protected void collectSelectedItems(ListSelectionModel lsm,
Collection<? super MyItemClass> result) {
for (int i : GUI.getSelectionIndices(lsm))
{
result.add(getItemByDisplayIndex(i));
}
}
Я хотел бы вернуть коллекцию вместо использования метода void:
protected <T super MyItemClass> Collection<T>
collectSelectedItems(ListSelectionModel lsm, Collection<T> result) {
for (int i : GUI.getSelectionIndices(lsm))
{
result.add(getItemByDisplayIndex(i));
}
return result;
}
с намерением сделать что-то вроде этого (где MyItemClass расширяет MyItemBaseClass
):
List<MyItemBaseClass> list =
collectSelectedItems(lsm, new ArrayList<MyItemBaseClass>());
но я получаю синтаксическую ошибку на super
:
Синтаксическая ошибка токена "super",, ожидаемая
Что дает? Могу я это исправить?