Java的四种引用类型
2015-11-04 13:30
330 查看
Java的引用类型分为强、软、弱、虚四种类型,这四种类型在垃圾回收时表现出不一样的特点。下面就简单的就这几个引用类型进行说明:
强引用:JVM宁愿发生内存溢出也不会将其回收。
软引用:只有在内存不足时才会回收这部分引用对象。
弱引用:只要系统发生GC(垃圾收集),弱引用的对象一定会被回收。
软引用与弱引用一般用来保存可有可无的缓存数据。
虚引用:即使引用对象还在,使用get方法仍然返回null。主要用于跟踪对象。
弱引用的应用:WeakHashMap:如果系统需要一张很大的哈希表用于保存缓存数据,同时即使没有从表中得到数据也没有关系,系统可以在内存不足时回收表中的某些数据,所以WeakHashMap特别适合使用弱引用。
强引用:JVM宁愿发生内存溢出也不会将其回收。
软引用:只有在内存不足时才会回收这部分引用对象。
弱引用:只要系统发生GC(垃圾收集),弱引用的对象一定会被回收。
软引用与弱引用一般用来保存可有可无的缓存数据。
虚引用:即使引用对象还在,使用get方法仍然返回null。主要用于跟踪对象。
弱引用的应用:WeakHashMap:如果系统需要一张很大的哈希表用于保存缓存数据,同时即使没有从表中得到数据也没有关系,系统可以在内存不足时回收表中的某些数据,所以WeakHashMap特别适合使用弱引用。
相关文章推荐
- java常见的几种内存溢出和解决方案
- Stackoverflow上人气最旺的10个Java问题
- Java 理论与实践: 处理 InterruptedException
- Java String类的intern方法
- spring boot下使用logback或log4j生成符合Logstash标准的JSON格式
- java源码分析之ArrayList
- java 常用快捷键
- 细碎之java
- eclipse自动补全
- 从”JAVA“而终 11:Enum的用法
- 为什么选择 Java 8 ?
- Java的悲观锁与乐观锁
- Java反射机制
- 为什么选择 Java 8 ?
- Java单例中的延迟加载
- Java中的HashMap, Hashtable,TreeMap, LinkedHashMap
- 给Java开发者的Scala教程
- Java基础学习总结(24)——Java单元测试之JUnit4详解
- Java基础学习总结(24)——Java单元测试之JUnit4详解
- Java基础学习总结(24)——Java单元测试之JUnit4详解