Solucionado (ver solução)
Solucionado
(ver solução)
4
respostas

Estou com dúvida no curso de Java e Orientação a Objetos, no exercício 2 do capítulo Herança, reescrita e polimorfismo.

Não concordo com a resposta do instrutor, porque ele soma o saldo com o próprio saldo, e depois multiplica pela taxa, conforme abaixo:

this.saldo += this.saldo * taxa;

eu acredito que o correto seria:

this.saldo = this.saldo * taxa;

Que seria apenas a multiplicação do saldo pela taxa.

4 respostas
solução!

Concordo contigo José Mario Nogueira.

O instrutor está correto, pois as taxas(valores na casa de 0,01;0,1; 0,2;) de banco geralmente são multiplicadas pelo valor total da conta e somadas em seguida ao valor da conta. Se utilizarmos essa abordagem(this.saldo = this.saldo * taxa;), o valor do saldo ficará irrisório, portanto errado.

Não estou entendendo bem essa lógica ainda, alguém poderia me explicar ?

Opa!

Entendi da seguinte forma... Quando você usa:

this.saldo = this.saldo * taxa;

Você está dizendo que o saldo RECEBERÁ o resultado da operação saldo * taxa, ou seja, this.saldo receberá apenas a taxa e não atualizará o valor anterior de maneira correta.

qualdo você usa:

this.saldo += this.saldo * taxa;

você está ADICIONANDO o resultado da operação saldo * taxa ao seu saldo anterior.

Espero que tenha ajudado! Abraços!