Vediamo se ho capito bene...se volessi fare una list (per esempio) di 'numeri', si dovrebbe fare

ArrayList<? extends Number> al = new ArrayList<? extends Number>();

e qui posso piazzare double, float, int, etc.? Ovviamente, usando le classi wrapper