我走过几个demo,
应该就是你的软引用为空之后,就会给GC清除出去的了。SoftReference sr=new SoftReference(Object o);
//我觉得如果你用到了一个软引用对象的话,
//为了保证你的程序没有问题,
//你就应该随时重新实例化你的对象
if(sr == null)
{
  //重新实例化你的对象
 sr = new SoftReference(new YourObject());
}
//下面再继续你的代码。

//做的好处应该是一些不变的占用内存很大的对象,
//可以随时让JVM自动清除一些内存出来,可以回快其它的程序的速度
//以及防止程序出现outofMemory.
//在要用时候,如果给GC了,可以随时可以再load出来。