Alguém poderia explicar por está chamando o método da mãe? pleaaase
Você está vendo a versão anterior da nova experiência da Alura que estamos preparando para você. Em breve, ela ganha uma identidade visual novinha totalmente pensada em potencializar seus estudos!
Alguém poderia explicar por está chamando o método da mãe? pleaaase
Olá, Maria.
Tudo bem?
Entendo que você está confusa sobre por que o método da classe mãe está sendo chamado. No exemplo apresentado, a classe ContaFinanceira é uma subclasse da classe Conta. No entanto, no método main da classe A, você está criando um novo objeto da classe Conta e chamando o método fecha().
Aqui está a linha de código relevante:
new Conta().fecha();
Nesta linha, você está criando um novo objeto da classe Conta, não da ContaFinanceira. Portanto, o método fecha() da classe Conta é chamado, e não o da ContaFinanceira.
Se você quisesse chamar o método fecha() da classe ContaFinanceira, você precisaria criar um objeto dessa classe, assim:
new ContaFinanceira().fecha();
Nesse caso, seria impresso "fechando financeiro", pois é o comportamento definido na classe ContaFinanceira.
Espero ter ajudado e bons estudos!