Quindi se ho ben capito, la limitazione di <? super Number> è riferita solo alla parametrizzazione e non sui contenuti della lista. Mentre per quanto riguarda l'aggiunta di un Object non è possibile perchè questo puo' esser qualsiasi tipo e nessuno ci garantisce che sia un numero.
Ho capito bene?
mentre in questo caso:
posso capire che List<? super Number> è super-tipo di List<? super Double> ? Alla riga 5 mi da errore perchè ArrayList<Double>() non è supertipo di ArrayList<Object>()?codice:List<? super Number> ln = new ArrayList<Number>(); // 1 List<? super Double> ld = new ArrayList<Double>(); // 2 ld = ln; // 3 ln = new ArrayList<Object>(); // 4 //ln = ld; // 5 compile error !!