🍅 Java学习路线:搬砖工逆袭Java架构师
🍅 简介:Java领域优质创作者🏆、优快云哪吒公众号作者✌ 、Java架构师奋斗者💪
🍅 扫描主页左侧二维码,加入群聊,一起学习、一起进步
🍅 欢迎点赞 👍 收藏 ⭐留言 📝
目录
二、软引用(SoftReference)与弱引用(WeakReference)
一、强引用
强引用的特点:
- 可以直接访问目标对象。
- 所指向的对象在任何时候都不会被系统回收。JVM宁愿抛出OOM异常,也不会回收强引用所指向的对象。
- 可能导致内存泄漏。
//强引用
User user = new User("zhangsan", 18);
二、软引用(SoftReference)与弱引用(WeakReference)
软引用:如果一个对象只具有软引用,而当前虚拟机堆内存空间足够,那么垃圾回收器就不会回收它,反之就会回收这些软引用指向的对象。
弱引用:垃圾回收器一旦发现某块内存上只有弱引用(一定请注意只有弱引用,没强引用),不管当前内存空间是否足够,那么都会回收这块内存。
本文探讨了Java中的强引用、软引用及其在内存管理中的作用,特别是使用软引用作为缓存策略的优势。通过代码实例展示了软引用HashMap工具类及与强引用的区别,强调了软引用在避免内存溢出和提升系统性能方面的效果。
订阅专栏 解锁全文
8385





