Generics

3 respostas
anderson.bonavides

What is the result?

interface A{ void x();} class B implements A{ public void x(){} public void y(){} } class C extends B{ public void x(){} } class Teste{ public static void main(String[] args) { java.util.List<A> list = new java.util.ArrayList<A>(); list.add(new B()); list.add(new C()); for (A a : list) { a.x(); a.y(); //erro. } } }
Options:
A) The code runs with no output.
B) An exception is thrown at runtime.
C) Compilation fais because of an error in line 20.
D) Compilation fais because of an error in line 21.
E) Compilation fais because of an error in line 23.
F) Compilation fais because of an error in line 25.

Alguem poderia me ajudar com essa questão?

3 Respostas

T

Anderson…

Coloque pelo menos o que você quer saber dela! :smiley:

[]'s Tjmm.

anderson.bonavides

Vlw Thiago. Mas eh q eu tinha colocado ela errado ai corrigi e acabei esquecendo do enunciado.

anderson.bonavides

Bem depois de uma força de um amigo. Me mostrou que o erro acontece por que a inteface A não tem nenhum método chamado y() que causara um erro de compilação.

Uma possível solução seria fazer uma mudança na interface A acrescentando o método y();

Criado 18 de janeiro de 2008
Ultima resposta 18 de jan. de 2008
Respostas 3
Participantes 2