[img]http://img202.imageshack.us/img202/3888/p16l.jpg[/img]
Salve galera... Nesse questão acima fiquei em dúvida e acabei acertando parcialmente ("Errei...hehe"). O gabarito aponta como corretas B, E e F...
<E extends Number> = Restringe E a Number ou qualquer classe que a extenda ou inplemente.
List<? super E> = (retorno) A Mesma ou qualquer classe que seja super-classe dela.
List<E> = Um List.
Certo ?
Tentei codifica, mas não consegui...
Alguém pode me dar um exemplo...
Nenhuma dessas alternativas que vc deu como certas… compilam
[code] public static List<? super E> process(List nuns){
return null;
}
public static void main(String[] args) {
List<Number> input = null;
List<? super Number> output = null;
output = process(input);
}[/code]
Isso é prova de onde hein?!
generics eh atencao mesmo + decoreba. Lembrar de todas as regras eh o fator chave, mas lembrar de verdade senao ja era.
Tem esses dois posts meu sobre o assunto para facilitar na decoreba:
http://camilolopes.wordpress.com/2008/08/04/polimorfismo-e-genericos-revisao-scjp/
http://camilolopes.wordpress.com/2008/07/28/revisao-scjp-genericogenerics/
flw! abracos
Até que o extends… e a declaracao genérica do E no método é de boa… eu já usei inclusive…
Mas misturar tudo isso ainda mais com esse ? super E… aí complicou… nao sei nem a utilidade… vou ter que dar uma lida denovo…
8)
Essa é a ultima quetão do capítulo 7 do livro da kathy. Imaginem que estava a estudar altas horas da noite e o código não compilava de forma alguma... hehe, essas são de cair o cabelo...
Valeu galera !!