Eu entendi que a assinatura do método, ao utilizar como parâmetro uma referência à superclasse permite que as subclasses possam sem referenciadas...
public void roda(Conta c) {
Apesar disso, continuo com a seguinte dúvida:
No exercício há a proposta da seguinte mudança no código:
De:
Conta c = new Conta();
ContaCorrente cc = new ContaCorrente();
ContaPoupanca cp = new ContaPoupanca();
Para:
Conta c = new Conta();
Conta cc = new ContaCorrente();
Conta cp = new ContaPoupanca();
Considerando que o programa executou sem erros e teve o mesmo resultado nas 2 formas, qual a real necessidade de fazer a mudança sugerida no tipo dos atributos c, cc e cp?