Não entendi a pergunta: A questão propõe mudar o código da classe para
Conta c = new Conta();
Conta cc = new ContaCorrente();
Conta cp = new ContaPoupanca();
`
Mas já tinhamos isso no exercício anterior. Realmente não entendi??
Não entendi a pergunta: A questão propõe mudar o código da classe para
Conta c = new Conta();
Conta cc = new ContaCorrente();
Conta cp = new ContaPoupanca();
`
Mas já tinhamos isso no exercício anterior. Realmente não entendi??
Acredito que o intuito neste exemplo era usar o polimorfismo, não que isso seja uma novidade até aqui mais para usarmos mesmo. Você instanciando uma classe com o tipo mais genérico, você consegue passar para uma validação por exemplo qualquer tipo de conta, desde que a classe que você instanciou seja a genérica.
Mariana, boa noite. Veja que a questão do polimorfismo trabalha exatamente essa questão! Você pode referenciar o objeto de várias formas, vamos analisar:
Você tem Contas:
Conta c = new Conta();
Veja que você tem uma referência para o objeto do tipo Conta c que referencia um objeto chamado Conta();
Seguindo em frente nós temos o seguinte:
Conta cc = new ContaCorrente();
Criamos uma referência cc do tipo conta e referenciamos ele para um outro objeto chamado ContaCorrente(); e não Conta();
Porquê ? Porquê Conta Corrente é um tipo de Conta não é? Sim!
Para te esclarecer mais, leia esse seguinte artigo:
Artigo herança, reescrita e polimorfismo - Caelum
Espero ter ajudado!
Muito obrigada pela ajuda Felipe! Entendido :)
Obrigado Mariana, se possível só fecha o tópico marcando a resposta como solucionada? ;) Grato!