Permite definir nuevas operaciones sobre una jerarquía de clases sin modificar las clases sobre las que opera.