(点击上方公众号,可快速关注)
博主最近在整理Java集合框架时,在整理到WeakHashMap的时候,觉得有必要先阐述一下Java的引用类型,故此先整理的这篇文章,希望各位多提提意见。 闲话不多说,直接进入主题。Java中提供了4个级别的引用:强应用、软引用、弱引用和虚引用。这四个引用定义在java.lang.ref的包下。 强引用( Final Reference) 就是指在程序代码中普遍存在的,类似Object obj = new Object()这类的引用,只要强引用还存在,垃圾收集器永远不会回收掉被引用的对象。 强引用具备以下三个个特点: 1. 强引用可以直接访问目标对象; 2. 强引用锁指向的对象在任何时候都不会被系统回收。JVM宁愿抛出OOM异常也不回收强引用所指向的对象; 3. 强应用可能导致内存泄露; 整个FinalReference类的定义如下(有些API中并没有加入FinalReference类的说明,只能看源码了):
|
|
声明:文章版权归原作者所有 部分文章转自互联网 如有侵权请联系
[邮箱地址] 删除
|