GoConqr has a new look! Let us know what you think.

Notes

2.4 Explicar o ciclo de vida do objeto

Luis Felipe Guariento Desenvolvimento de Software Concursos Públicos Portuguese 8 pages

Content of the notes (8)

Page 1

Trabalhando com tipos de dados em Java

Explicar o ciclo de vida do objeto ( criação, deferência por reatribuição, garbage collector )

Page 2

Criação de objeto

A criação de um objeto inclui dois passos: instanciação e inicialização. A instanciação é feita quando se utiliza o operador new, enquanto a inicialização é implementada por construtores.

Ao final do código abaixo temos a criação de um novo objeto referenciado por myObject e do tipo MyClass.

2.4 Explicar o ciclo de vida do objeto

Page 3

Destruição de um objeto

Um objeto pode ser destruído utilizando uma técnica chamada "dereference by reassignment", tornando-o elegível para o coletor de lixo.

Quando um objeto não for mais necessário, o mesmo deve ser destruído de modo a liberar memória. Entretanto o programador não poderá destruir o objeto explicitamente, ao invés disso, isso será feito automaticamente pela JVM utilizando-se o coletor de lixo (Garbage Collector) e um objeto se torna alvo do Garbage Collector quando mais nenhuma variável no programa Java o referencia. Para isso basta "dereferenciar" o objeto utilizando uma reatribuição. Conforme mostrada a seguir:

2.4 Explicar o ciclo de vida do objeto

Page 4

2.4 Explicar o ciclo de vida do objeto

No código acima, após a execução serão criados 3 objetos. Cada vez que o construtor é chamado através do operador new, um novo objeto será criado. Resposta: C.3

Page 5

2.4 Explicar o ciclo de vida do objeto

A mesma lógica é utilizada aqui, toda vez que o operador new é utilizado em uma sentença, um novo objeto do tipo que vem após new será criado. Portanto no código acima somente será criado um objeto com as variáveis de referência a objeto apontando para o objeto criado. Resposta A.1

Page 6

2.4 Explicar o ciclo de vida do objeto

No código acima, inicialmente as variáveis de referência a objeto object1 e object2 apontam para o mesmo objeto MyClass criado, quando fazemor object2 = null; quer dizer que ele passa a não mais apontar para o objeto MyClass, entretanto esse objeto não estará elegível para o coletor de lixo já que ainda temos a referência object1 "apontando" para ele. Isso quer dizer que a resposta é A. True, realmente nenhum objeto será elegível para o coletor de lixo depois que esse fragmento de código for executado.

Page 7

2.4 Explicar o ciclo de vida do objeto

No código executado acima, após a chamada a //1, será criado inicialmente um objeto da classe MyClass pela chamada a new MyClass().

Entretanto após a chamada a myMethod() serão criados mais dois objetos MyClass() no qual somente um será retornado do método e referenciado por object3.

Portanto três objetos MyClass são criados mas object3 somente referenciará um deles, que é o mesmo objeto que a referencia local object1 referenciava. Isso quer dizer que teremos DOIS objetos elegíveis para o coletor de lixo e a resposta é C.2.

Page 8

Sumário

A criação de um objeto inclui dois passos: instanciação e inicialização. A instanciação é feita através do operador new enquanto a inicialização é realizada por construtores.

Um objeto pode ser destruído utilizando o Garbage Collector ( coletor de lixo ) através da técnica "dereference by reasignment".

Information

Description
Concursos Públicos Desenvolvimento de Software (OCAJP 8 Online Course) Note on 2.4 Explicar o ciclo de vida do objeto, created by Luis Felipe Guariento on 21/12/2018.
Created by
Luis Felipe Guariento · Dec 2018
Updated
Dec 21, 2018
Views
0
Rating

Feedback

What is it about?

What do you think of the new look?

How do you like it?