Duvida referente ao abstract (desafio 9.7 caelum) [RESOLVIDO]

3 respostas
F

Boa Tarde galera!
Tem um desafio da caelum 9.7 na parte que explica sobre classes abstratas e há uma seguinte pergunta:

  1. Não podemos dar new em Conta, mas por que, então, podemos dar new em Conta[10], por exemplo?
    se colocamos abstract na classe sabemos que não podemos instanciala e se colocar em um metodo dela seria para fazer a obrigatoriedade do método em classes filhas correto? agora por que colocando abstract na classe e instacialos como array da certo?
    Obrigado

3 Respostas

daveiga

O ‘new’ no caso do Array não cria uma instância de Conta, cria um Array que pode conter Contas, onde Conta pode ser uma instância de quaquer classe concreta que instancie conta.

Conta[] contas = new Conta[10]; // Array de Classe Abstrata contas[0] = new ContaCorrente(...); // Classe Concreta contas[1] = new ContaPupanca(...); // Classe Concreta

F

poxa brother… iluminou a escuridao hahaha… entendi perfeitamente hehe… Obrigado pela excelente explicação
Valews
t+

daveiga

Ahh que isso cara #tamojunto! Obrigado

Criado 13 de setembro de 2011
Ultima resposta 13 de set. de 2011
Respostas 3
Participantes 2