Solucionado (ver solução)
Solucionado
(ver solução)
5
respostas

O polimorfismo não está funcionando....

QUanto tento criar um objeto do tipo ArrayList e instanciá-lo usando uma variável do tipo List, o eclipse não complica.

Meu código:

import java.awt.List;
import java.util.ArrayList;

public class Main {

    public static void main(String[] args) {
        List lista = new ArrayList();




    }
}

ERRO:

Exception in thread "main" java.lang.Error: Unresolved compilation problem: Type mismatch: cannot convert from ArrayList to List

at Main.main(Main.java:7)

5 respostas

Você precisa indicar o tipo da List. Algo como:

List<String> palavras = new ArrayList<>();

Faz um teste =)

solução!

Acredito que você está importando do pacote errado.

Você deve importar do pacote java.util.List e não de java.awt.List.

Faça esta alteração e verifique se resolveu =)

Se você está tentando utilizar a lista do java.util (java.util.List) que herda de Collection, você deveria declará-la com um tipo. Algo como:


java.util.List;
java.util.ArrayList;

...

    // declarando o List
    List<T> = ArrayList<>();
    // Poderia ser feito assim também:
    List<T> = ArrayList<T>();
    // Onde T é o tipo do objeto que será inserido dentro da lista.

Bom, acredito que é isso

Bom dia A todos ,

a Resposta do Thiago está correta .

Lucas o seu importe está errado , o certo teria que ser da java.util e não java.awt.

Boa tarde Lucas, É isso o que os caros já falaram, no seu caso você deveria importar o pacote java.util.List e informar qual o tipo da lista dentro dos < > que devem ir apos o nome da classe ex: List<"meuTipoAqui">. Se estiver usando alguma IDE tipo NetBeans leia certinho o que ele está sugerindo antes de dar dois clicks na opção.