Referencia do Objeto

Por exemplo nessa instrução:

Test myTest = new Test();

Test myTest -> Eu estou criando uma variável do tipo Test

new Test(); -> Eu estou criando um novo objeto Test

= ->Estou atribuindo o objeto Test a variável myTest

Está correto assim?

Seria um erro de compilação apenas isso? Test myTest;
Nesse caso a referencia seria nula?

Pelo que você falou é isso mesmo:

Test myTest = new Test();   // instanciação

Uma variavel é nula quando ainda não foi instanciada, ou seja, ainda não “virou” um objeto.

Não sei se era essa sua dúvida…

[quote=RafaelViana]Por exemplo nessa instrução:

Test myTest = new Test();

Test myTest -> Eu estou criando uma variável do tipo Test

new Test(); -> Eu estou criando um novo objeto Test

= ->Estou atribuindo o objeto Test a variável myTest

Está correto assim?

Seria um erro de compilação apenas isso? Test myTest;
Nesse caso a referencia seria nula?[/quote]

Não seria um erro de compilação.
A referência é nula porque não foi atribuído nenhum objeto à ela ainda (não precisa criar um objeto na Heap. Se você atribuir um objeto já existente, ela deixa de ser nula). Por exemplo:

V v1 = new V();    // criou um objeto na Heap
V v2;     // v2 aponta para o 'nada', entao e nula
v2 = v1;      // v1 e v2 apontam para o mesmo objeto

v1 e v2 são só referências. Chamar v1 e v2 de objetos é errado.

Abraço.

A variável é nula se ela foi criada e não referencia nenhum objeto certo?

Se for isso mesmo era só :smiley:

Valeu

[quote=RafaelViana]A variável é nula se ela foi criada e não referencia nenhum objeto certo?

Se for isso mesmo era só :smiley:

Valeu[/quote]

É.

[quote=RafaelViana]
Seria um erro de compilação apenas isso? Test myTest;
Nesse caso a referencia seria nula?[/quote]

soh seria erro de compilaçao se a variavel estiver sendo declarado dentro de um metodo/for/etc e
vc tiver tentando usa-la antes de inicializa-la.