深机笔记
来源:互联网 发布:媒体的作用 知乎 编辑:程序博客网 时间:2024/05/21 20:04
3.2.3节
JDK1.2后,Java将引用分为强引用(StrongReference)、软引用(SoftReference)、弱引用(WeakReference)、虚引用(PhantomReference),4种引用强度依次逐渐减弱
1.强引用:
程序代码中普遍存在、类似"Objectobj=newObject()"的引用
只要强引用还存在,垃圾收集器永远不会回收被引用的对象
2.软引用:
还有用但并非必需的对象
系统发生内存溢出异常之前,会把软引用对象列进回收范围进行第二次回收,如果回收后还没有足够内存,才会抛出内存溢出异常
在JDK1.2之后,提供SoftReference类实现软引用
3.弱引用:
也用来描述非必需对象,但强度比软引用更弱一些
弱引用关联对象只能生存到下一次垃圾收集发生之前,垃圾收集器工作时,无论当前内存是否足够,都会回收掉只弱引用关联的对象
在JDK1.2之后,提供WeakReference类实现弱引用
4. 虚引用:
也称为幽灵引用、幻影引用,最弱的一种引用关系
对象是否有虚引用的存在,完全不会对其生存时间构成影响,也无法通过虚引用取得对象实例
为对象设置虚引用关联的唯一目的是能在这个对象被收集器回收时收到一个系统通知
在JDK1.2之后,提供PhantomReference类实现虚引用
阅读全文
0 0
- 深机笔记
- 深机笔记
- 深机笔记
- 深机笔记
- 深机笔记
- 深机笔记
- 深机笔记
- 深机笔记
- 深机笔记
- 深机笔记
- 深机笔记
- 深机笔记
- 深机笔记
- 深机笔记
- 深机笔记
- 深机笔记
- 深机笔记
- 深机笔记
- java字符串表示/
- C++面向对象编程(概念)
- /ThinkPHP/Library/Think/Storage/Driver/File.class.php LINE: 48
- 暑假写题第一天
- Apriori 算法关联分析
- 深机笔记
- 处理java中内存溢出
- 如何准备BAT技术面试答案(中)——Java研发方向
- AE 制作一个简单的动画
- STL库容器vector front函数&back函数
- hbase bulk load相关源码简析之HFileOutputFormat、LoadIncrementalHFiles
- 用两个栈实现队列
- assert java 断言
- [LeetCode] 82. Remove Duplicates from Sorted List II