I tipi generici sono stati implementati nella versione di Java 5, e per mantenere la retro compatibilità con il vecchio codice è possibile istanziare delle classi generiche senza definire alcun tipo.

ArrayList<Integer> p1 = new ArrayList<Integer>(10);
ArrayList p2 = new ArrayList(10);