Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

Sobre a aula de "Referência Null"

public class TestaContaSemCliente { 
    public static void main(String[] args) { 
        Conta contaDaMarcela = new Conta();
        System.out.println(contaDaMarcela.saldo);

        contaDaMarcela.titular = new Cliente();
        System.out.println(contaDaMarcela.titular);

        contaDaMarcela.titular.nome = "Marcela";
        System.out.println(contaDaMarcela.titular.nome); 
    }
}

Só pra saber se eu entendi (: Neste código dado em aula, ele usa a várivel de referência "contaDaMarcela" para "acessar" aos dois objetos?(Conta e cliente)

E Sempre que eu quiser preencher os atributos do Cliente é só fazer "contaDaMarcela.titular.atributoDentroDoCliente"? Obrigado

2 respostas
solução!

Boa tarde Alexandre,

A variável de referência contaDaMarcela só aponta para a classe Conta, então só acessa 1 Objeto. Mas contaDaMarcela está referenciando um Objeto que tem um atributo titular do tipo Cliente, e é este atributo que passa a referenciar 1 Objeto do tipo Cliente na linha:

contaDaMarcela.titular = new Cliente();

Se você não faz o código acima, a contaDaMarcela não teria como acessar o nome do titular, pois o titular estaria null, ou seja, teríamos apenas a referência da Conta.

Lembrando também que você conseguiu referenciar o atributo nome pois era do tipo String (também um Objeto como Conta e Cliente), seria o equivalente a:

ContaDaMarcela.titular.nome = new String("nome qualquer");

Neste momento você tem 3 Objetos referenciados. Sendo assim, titular poderia ter outros mais Objetos como atributo para se referenciar.

ah sim, entendi, obrigado, manolo ;D