Criando objetos - 1

"Oi, é o seu professor favorito de novo. Já que você está fazendo um grande progresso, decidi falar sobre os objetos e como trabalhar com eles."

" Para criar um objeto, você precisa digitar a palavra-chave 'new' seguida do nome do tipo (nome da classe). Por exemplo, suponha que temos uma classe chamada 'Cat':"

Código Descrição
Cat cat;
Declara uma variável de referência Cat chamada cat. O valor da variável cat é nulo.
new Cat();
Cria um objeto Cat.
Cat cat = new Cat();
Cria uma variável de referência Cat chamada cat.
Cria um novo objeto Cat. Atribui uma referência ao objeto recém-criado à variável cat.
Cat kitty = new Cat();
Cat smokey = new Cat();
Dois objetos são criados. As referências a eles são atribuídas a duas variáveis ​​diferentes.
Cat kitty = new Cat();
Cat smokey = new Cat();

smokey = kitty;
Dois objetos são criados. As referências a eles são atribuídas a duas variáveis ​​diferentes.

Em seguida, definimos a variável smokey igual a uma referência ao objeto referenciado pela variável kitty. Ambas as variáveis ​​agora se referem aos primeiros objetos criados.
(Como o segundo objeto não é mais referenciado em nenhum lugar, agora é considerado lixo)

Cat kitty = new Cat();
Cat smokey = null;

smokey = kitty;

kitty = null;
Um objeto Cat é criado e uma referência a ele é atribuída à primeira variável (kitty). A segunda variável (smokey) armazena uma referência vazia (nula).

Ambas as variáveis ​​referem-se ao mesmo objeto.

Agora, apenas smokey, mas não gatinho, refere-se a um objeto.

"O que aconteceria se criássemos um objeto e não salvássemos uma referência em nenhuma variável?"

"Se apenas criarmos um objeto sem atribuí-lo a uma variável, a máquina Java o criará e o declarará lixo (um objeto não utilizado). Depois de um tempo, o objeto será descartado durante a coleta de lixo . "

"Como me desfaço de um objeto que não preciso mais?"

"Você não. Assim que nenhuma variável se referir a um objeto, ele é rotulado como lixo e destruído pela máquina Java na próxima vez que coletar lixo. "

Desde que haja pelo menos uma referência a um objeto, ele é considerado ativo e não será destruído. Se quiser descartar um objeto mais cedo, você pode limpar todas as referências a ele atribuindo null a todas as variáveis ​​que o referenciam.

"Entendo. Comparado com as últimas lições, isso parece bem simples."

"Diego ficou acordado a noite toda pensando em tarefas para você. Ele fez esse esforço especial só para você. Ele tem um ótimo senso de humor, sabia?"


Um trecho de palestra com um mentor como parte do curso Codegym University. Inscreva-se no curso completo.