Tipos Genéricos de Datos AbstractosLos TDAs se usan para definir un nuevo tipo a partir del cuál se pueden crear instancias. Como se mostró en el ejemplo de la lista, algunas veces estas instancias deberían operar del mismo modo sobre otros tipos de datos. Por ejemplo, uno puede pensar en listas de manzanas, carros o aún listas. La definición semántica de una lista siempre es la misma. Solamente el tipo de los elementos de datos cambia de acuerdo al tipo sobre el cuál debía operar la lista..
:List<Apple> listOfApples;
Los corchetes angulares encierran ahora el tipo de datos para el cuál una variante del TDA genérico List sería creada. listOfApples ofrece la misma interface que cualquiera otra lista, pero opera en instancias del tipo Apple.