Imagine o cenário...
vc recebe um arquivo de texto com o detalhamento da conta telefônica.. lá tem todos os registros de ligações sendo que cada ligação é categorizada de uma forma: Local DDD VC1 = celular local VC2 = Celular de outra operadora local VC3 = celular interurbano DDI
cada tipo tem uma regra de tarifação diferente, então vc cria classes diferentes para aplicar essas regras todas implementando a mesma interface. A sua classe cliente vai ter que procurar saber quem é que vai tratar aquela regrar...
como fazer isso sem aplicar ifs?