public class Test { public static void main(String[] args) { ArrayList<Integer> l = new ArrayList<Integer>(); Type type = l.getClass().getGenericSuperclass(); ParameterizedType pt = (ParameterizedType)type; for (Type t: pt.getActualTypeArguments()) { System.out.println(t); } } }