在Java中,SoftReference是一种特殊的引用类型,用于创建对对象的软引用。软引用是一种比强引用弱一些的引用,如果一个对象只有软引用指向它,那么只有在内存不足时,GC才会回收这个对象。
SoftReference可以通过以下方式使用:
创建SoftReference对象:SoftReference<String> softRef = new SoftReference<>("Hello");获取SoftReference引用的对象:String value = softRef.get();判断SoftReference引用的对象是否被回收:if (softRef.get() == null) { // 对象已被回收} else { // 对象还未被回收}设置SoftReference引用的对象为null:softRef.clear();注意:SoftReference一般用于实现缓存,当内存不足时,GC会回收软引用指向的对象,从而释放内存。SoftReference的get()方法返回的对象可能为null,因此使用SoftReference时需要注意判空处理。


