Double Dispatch

Um mecanismo que despacha uma chamada de função para diferentes funções concretas, dependendo dos tipos de tempo de execução de dois objetos envolvidos na chamada. O despacho duplo é uma forma de despacho múltiplo.