Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Polimorfismo

você deu um @Override no método saca dentro da classe ContaCorrente, porém aulas antes você também reescreveu um método que foi o getBonificacao, porém sem usar o @Override, por qual motivo ?

1 resposta
solução!

Oi Gustavo, tudo bem?

O @Override só garante que o método da classe filha que tem essa anotação está sobrescrevendo um método existente de mesma assinatura na classe mãe. Ou seja, se você tem o getBonificacao() tanto na classe mãe quanto na classe filha, ambos com mesma assinatura, você pode usar o @Override para garantir que, caso você mude a assinatura do getBonificacao() na classe mãe, esse mesmo método pare de funcionar na classe filha também, te obrigando a corrigir a o código.

Como esse mecanismo de sobrescrita (@Override) só foi apresentado agora, passaremos a fazer uso dele desse momento em diante. Mas isso também serve para mostrar que o método herdado continua funcionando e sobrescrevendo o método da classe mãe sem nenhum problema. A maior vantagem que o @Override traz é a segurança, como eu disse anteriormente, ele garante que o método que será sobrescrito realmente existe na classe mãe.

Espero ter ajudado, qualquer dúvida é só avisar.

Bons estudos!!