1
resposta

Nomenclatura dos métodos

Uma dúvida, talvez meio exagerada, mas…

Logo após a aula sobre template method, a classe referente à calculadora de descontos possui um método chamado "calcular".

A classe abstrata desconto também possui um método chamado "calcular".

Faria sentido esses dois métodos terem nomes diferentes?

Por exemplo, posso chamar o método da CalculadoraDeDescontos de "calcular" e o método concreto da classe abstrata de "processarCálculo" e o método abstrato de "obterDesconto"?

Ou é esperado que aqueles dois primeiros métodos (da frase acima) tenham o mesmo nome mesmo? Faz sentido?

Obrigado!

1 resposta

Pelo oq eu entendi você está se referenciando a esses dois trexos:

public BigDecimal calcular(Orcamento orcamento){
//codigo
}
public BigDecimal calcular(Orcamento orcamento){
//codigo
 }

Como vc pode ver, elas possuem o mesmo nome e variáveis, isso é preciso pois é uma questão de polimorfismo. Quando voce cita o calcular nas duas é referente ao mesmo metodo de calcular o desconto. Portanto é preciso sim vc usar o mesmo nome.