我在我的应用程序中有一个静态地图,当我点击一个链接时它会被填充。 之后,它使大量的对象和存储它们。现在我有一个链接可以清除这张地图。从静态Map中移除时是否收集对象垃圾?
这是我的代码。
Hello1 hello1 = new Hello1();
hello1.setHello("Helllollo1");
Hello hello = new Hello();
hello.setHello1(hello1);
hello.setHello("Hellollo");
setMap("1", (Object)hello);
Hello1 hello2 = new Hello1();
hello2.setHello("Helllollo1");
Hello helo = new Hello();
helo.setHello1(hello2);
helo.setHello("Hellollo");
setMap("2", (Object)helo);
Hello1 hello3 = new Hello1();
hello2.setHello("Helllollo1");
Hello helo1 = new Hello();
helo1.setHello1(hello3);
helo1.setHello("Hellollo");
setMap("3", (Object)helo1);
现在我有一个方法removeMap其工作原理如下
public static void removeMap(String key){
if(map.containsKey(key)){
map.remove(key);
}
}
所以,当我要求一个密钥这种方法将以上三种对象之后,是该对象垃圾回收与否?
垃圾收集的资格是一个很好的记录的主题,我建议你做一些研究。您还可以将分析器附加到您的流程中,并观察当前生活的对象的数量。 – Justin