Estou desenvolvendo um mini aplicativo onde por exemplo cada vez que clico num botão ele precisa instanciar uma classe, e fazendo isso mesmo sempre intanciando com o MESMO nome o java cria um novo objeto certo? minha dúvida é quanto a memória, tipo se eu clicar 60 vezes neste botão ele terá os 60 objetos na memória ou consigo gerenciar isso de alguma forma?
Desculpem-me se não consegui ser muito claro ou se minha pergunta estiver equivocada.
Se você utilizar a mesma instancia (nome) para referenciar outro objeto, o antigo objeto vai ficar pronto para ser coletavel pelo garbage collector.
Ex.
// 1
Objeto a = new Objeto();
// 2
a = new Objeto();
...Finalizando a execução da linha 2, o objeto criado na linha 1 vai ficar pronto para ser coletavel pelo garbage collector, embora você não sabe exatamente quando, pois é uma thread que executa isto !!! Você até pode sugerir para o java limpar sua memoria, mas isto não é garantido System.gc();
O java cuida disto para você, quando o objeto não tiver mais referencia “apontando/referenciando” o mesmo, ele fica pronto para ser “limpo” da memoria.