四种引用,强引用,软引用,弱引用,虚引用,分别介绍
四种引用,是Java中用来描述对象生命周期的概念,分别是强引用,软引用,弱引用和虚引用。他们在垃圾回收过程中的行为不同,允许程序员更精细地控制对象的生命周期。
1. 强引用(Strong Reference):
强引用是Java中最常见的引用类型,
- 如果一个对象具有强引用。
- 即使系统内存不足,垃圾回收器也不会回收这个对象,
- 只有在不再有任何强引用指向这个对象时,才会被回收
2. 软引用(Soft Reference)
软引用用于描述一些还有用但非必需的对象。
- 如果一个对象只有软引用指向它,
- 那么在系统内存不足时,垃圾回收器会尝试回收这些对象。
- 软引用通常用于实现内存敏感的缓存,可以在内存不足时释放缓存中的对象。
3. 弱引用(Weak Reference)
弱引用比软引用的生命周期更短暂。
- 如果一个对象只有弱引用指向它,
- 在进行下一次垃圾回收时,不论系统内存是否充足,这些对象都会被回收。
- 弱引用通常用于实现对象缓存呢,但不希望缓存的对象影响垃圾回收的情况。
4.虚引用(Phantom Reference)
虚引用是Java中最弱的引用类型。
- 如果一个对象只有虚引用指向它,那么无论何时都可能被垃圾回收器回收。
- 但在对象被回收之前,虚引用会被放入一个队列中供程序员处理。
- 虚引用主要用于跟踪对象被垃圾回收的时机,进行一些清理

浙公网安备 33010602011771号