Fazer contagem dos objetos

4 respostas
jroberto.nsc

Olá pessoal.

Eu preciso de uma ajuda , Bem e o seguinte eu preciso criar um programa que faça a contagem de quantas instancias existem , e mostrar com o método finalize() antes que o coletor de lixo os retire .

Basicamente seria as instancias que o construtor criou e no inicio e quantos existem depois de não usados mais.

Obrigado!

4 Respostas

nel

Boa noite.

Não entendi totalmente a sua dúvida mas posso responde-la parcialmente.
Para saber a quantidade de instancias de um objeto basta:

private static int objetos = 0;

public Class {
   public Class() {
       objetos++;
   }
}

Coloquei a variavél como private, mas o modificador de acesso fica a seu critério bem como acessar o valor da variavél.

Espero ter ajudado, abraços.

jroberto.nsc
package desafio;

public class ContagemObejtos {

	private static int quantidadeObejtos = 0;

	public ContagemObejtos(){
		quantidadeObejtos++;
		System.out.println("Objeto     : " + quantidadeObejtos);
	}
	public void finalize(){
		quantidadeObejtos--;
		System.out.println("Quantidade : " + quantidadeObejtos);
	}

	public static void main(String[] args) {

		ContagemObejtos contagemObejtos = new ContagemObejtos();
		ContagemObejtos contagemObejtos2 = new ContagemObejtos();
		ContagemObejtos contagemObejtos3 = new ContagemObejtos();
		
		contagemObejtos2 = contagemObejtos3;

		contagemObejtos2.finalize();
		contagemObejtos.finalize();
		contagemObejtos3.finalize();

	}

}

Seria assim?
eu so quero saber quantas instâncias existem no inicio da execução e no final .

nel

Sim, voce ainda permanece com os três objetos mas com duas referencias, já que uma delas você perde.
Faça o teste e publique, é para aparecer 0 objetos.

Abraços.

jroberto.nsc

Ok Valeu pela atenção , com o variáveis da classe não da certo mesmo , a variável precisa ter o static

Criado 15 de maio de 2010
Ultima resposta 17 de mai. de 2010
Respostas 4
Participantes 2