Los tipos abstractos son útiles en que pueden ser utilizados para definir y establecer un "protocolo"; un conjunto de operaciones que todos los objetos que implementen el protocolo deben soportar.