java中引用分为,强,弱,虚,软 (1)强引用 使用最普遍的引用.如果一个对象具有强引用,它绝对不会被gc回收.如果内存空间不足了,gc宁愿抛出OutOfMemoryError,也不是会回收具有强引用的对象. (2)软引用 如果一个对象只具有软引用,则内存空间足够时不会回收它,但内存空间不够时就会回收这部分对象.只要这个具有软引用对象没有被回收,程序就可以正常使用. (3)弱引用 如果一个对象只具有弱引用,则不管内存空间够不够,当gc扫描到它时就会回收它. (4)虚引用 如果一个对象只具有虚引