Sono un po 'perso con questo. Ho un codice (che non ho scritto) che ha una classe chiamata BitSetExt, che estende BitSet. La firma è simile a:Tipo di ritorno incompatibile Java8 IntStream per Collezioni <Integer> .stream()
private class BitSetExt extends BitSet implements Set<Integer>
Il metodo stream() non viene sovrascritto nella classe estesa. So che il codice si compila bene con Java 1.6. In Eclipse con Java8, ho ricevuto l'errore:
I tipi restituiti non sono compatibili con i metodi ereditati Collection.stream(), BitSet.stream().
Se tento di sovrascrivere stream() e cambio il tipo di ritorno IntStream in qualcosa, ottengo un errore diverso e un suggerimento per cambiare il tipo di ritorno in IntStream (che a quanto pare non è compatibile). Quindi, cosa non sto capendo e come posso risolvere questo codice?
Grazie per qualsiasi aiuto.
Oppure - possibilmente un'idea migliore - fai in modo che la tua implementazione abbia un 'BitSet' e attui' Set', che è probabilmente un'interfaccia più potente. –