原 面试题(六)谈谈你对WeakHashMap的理解
版权声明:本文为博主原创文章,请尊重他人的劳动成果,转载请附上原文出处链接和本声明。
本文链接:https://www.91mszl.com/zhangwuji/article/details/1167
WeakHashMap演示代码如下:
package com.mszl.gc;
import java.util.HashMap;
import java.util.WeakHashMap;
/**
* 功能:WeakHashMap
* 备注:更多资料请访问 http://www.91mszl.com
* @author bobo teacher
*/
public class ReferenceDemo4 {
// 强引用
public static void myHashMap(){
HashMap<Integer, String> map=new HashMap<Integer, String>();
Integer key=new Integer(5);
String value="91mszl.com";
map.put(key, value);
System.out.println(map);
key=null;
System.out.println(map);
System.gc();
System.out.println(map + "\t" + map.size());
}
// 虚引用
public static void myWeakHashMap(){
WeakHashMap<Integer, String> map=new WeakHashMap<Integer, String>();
Integer key=new Integer(10);
String value="www.91mszl.com";
map.put(key, value);
System.out.println(map);
key=null;
System.out.println(map);
System.gc();
System.out.println(map + "\t" + map.size());
}
public static void main(String[] args) {
myHashMap();
System.out.println("===============");
myWeakHashMap();
}
}
执行结果
{5=91mszl.com}
{5=91mszl.com}
{5=91mszl.com} 1
===============
{10=www.91mszl.com}
{10=www.91mszl.com}
{} 0
总结:只要是弱引用,只要GC运行,马上被回收。
2019-12-10 14:01:36 阅读(1181)
名师出品,必属精品 https://www.91mszl.com
博主信息