你想了解的这些知识,很难用简短的回答可以说清楚的,更多的希望你能多看看书或者其他人的博客文章进行加深理解。
这些引用主要是跟 GC 有关,你可以去看看了解 GC 和 JVM 的相关知识,这里我简单的说一下。
Strong Reference(强引用):不会被垃圾回收器回收。
Soft Reference(软引用):内存空间不足时,就会被垃圾回收器回收。
Weak Reference(弱引用):一旦被置为null,就可以被垃圾回收器回收。
Phantom Reference(虚引用):随时可以被垃圾回收器回收。
下图描述了各个引用之间的关系:
集结各类场景实战经验,助你开发运维畅行无忧