У меня есть:
LinkedList<Interface> fred = new LinkedList<Class>();
, где Interface и Class - имена интерфейсов и классов соответственно, но java дает мне ошибку несоответствия типов.Мой класс реализует интерфейс и успешно содержит все функции, вызываемые интерфейсом.
Почему это не работает?
Вы ищете:
LinkedList<Interface> fred = new LinkedList<>();
Приведенный ниже недопустим, так как тип T должен быть одинаковым как с левой, так и с правой стороны, и ясно, что это недело.
T
Вы можете сделать это:
LinkedList<MyInterface> fred = new LinkedList<>();
Рекомендуемый подход:
List<MyInterface> fred = new LinkedList<>();