André, boa noite,
Eu ainda não consegui entender o erro, pois ao criar a primeira conta deu certo, para criar a conta2 não seria o mesmo procedimento?
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!
André, boa noite,
Eu ainda não consegui entender o erro, pois ao criar a primeira conta deu certo, para criar a conta2 não seria o mesmo procedimento?
Boa tarde Marcelo, tudo blz?
O Erro de referência nula ocorre, geralmente, quando você tenta acessar uma váriavel do tipo referência (classe) que ainda não foi instânciada, por exemplo?
Criei uma nova conta:
ContaCorrente conta2 = new ContaCorrente();
conta2.titular.nome = "José Souza";
conta2.titular.profissao = "Tester";
conta2.titular.cpf = "987654321";
conta2.conta = "9999-X";
conta2.numero_agencia = 18;
conta2.saldo = 500;Mas note que a propriedade titular da conta corrente é do tipo Cliente, ou seja o objeto conta2 possui como propriedade um outro objeto, neste caso o titular que é do tipo Cliente.
Eu crio a instância da conta corrente, e consigo enxergar os campos do titular, porém ele ainda não foi instânciado, portanto neste momento da execução deste código ocorre o erro de referência nula.
na sequência corrigimos instanciando( dar o new) o titular:
ContaCorrente conta2 = new ContaCorrente();
conta2.titular = new Cliente(); // criando uma instância, ou seja, criando o objeto na memória.
conta2.titular.nome = "José Souza";
conta2.titular.profissao = "Tester";
conta2.titular.cpf = "987654321";
conta2.conta = "9999-X";
conta2.numero_agencia = 18;
conta2.saldo = 500;Espero que tenha ajudado e, qualquer coisa, estamos à disposição!
Abraços e bons estudos 😄