Substituição de ifs por Map

Lendo este post do Guilherme Silveira fiquei com dúvida neste trecho usando map:

private Map<String, Aplicador> taxas = new HashMap<String, Aplicador>();
 
public void processa(String taxa, double juros) {
 impostosRecolhidos += taxas.get(taxa).aplicaComJuros(juros);
}

Neste caso para ocorrer polimorfismo a classe “Aplicador” teria que ser uma interface certo?

Isso mesmo, ou uma super classe das classes específicas.

1 curtida