Java наследование обобщённых типов

Если создать переменную типа List<Number>, то ей нельзя будет присвоить ссылку на экземпляр ArrayList<Integer>  или ArrayList<Double>. Вы можете присвоить ей только экземпляр ArrayList<Number> ( либо LinkedList<Number> ): Читать далее Java наследование обобщённых типов