学习WeakHashMap之前,我们先来学习一下Java的四种引用:
Java中提供了一个Reference抽象类,此类定义所有引用对象共有的操作,与垃圾收集器密切配合实现的。主要是为了决定某些对象的生命周期,有利于JVM进行垃圾回收。而继承此类的有四种引用,分别是StrongReference(强引用),SoftReference(软引用),WeakReference(弱引用),PhantomReference(虚引用),强度按照上面的顺序依次减弱。下面来看下四种引用的对比。
强引用 :首先当 Object obj = new Object();当我使用new关键字的时候,就是一种强引用,表示任何时候都不会被回收。
软引用 :在java.lang.ref包下,有SoftReference类,当内存不足的时候,会被GC回收。
弱引用 :在java.lang.ref包下,有WeakReference类,是相对软引用来讲的,只要存在弱引用对象,那么不管内存是否足够,一定会被回收;
虚引
Java集合8——WeakHashMap
最新推荐文章于 2022-12-02 18:20:23 发布