Solamente quiero saber sus diferentes opiniones del por que este código en java no compilaría, para asi tener mas claro el tema.
Código:
import java.util.*;
class Pila<E> {
private ArrayList<E> datos;
public Pila() {
datos = new ArrayList<E>();
}
public void agregar(E dato) {
datos.add(dato);
}
public E recuperar(int pos) {
return datos.get(pos);
}
}
class GestionPila {
void lectura() {
Pila<Integer> p = new Pila<Integer>();
p.agregar(7);
volcado(p);
}
void volcado(Pila<? extends Number> pl) {
System.out.println(pl.recuperar(0));
pl.agregar(40); // error de compilación
}
}