引用,一提到这个词会想到什么?Java里除了基本数据类型就是引用类型。
下面一道面试题不常考,但是一旦考了,能说上来的人就非常少了。强引用、软引用、弱引用、幻象引用有什么区别?
Java中根据其生命周期的长短,将引用分为4类,具体情况如下:
强引用
特点:我们平常通过new出来的对象关联的引用就是强引用,如Object obj = new Object()中的obj。
一个对象具有强引用,垃圾回收器绝不会轻易回收它。当内存空间不足时,JVM宁愿抛出OutOfMemoryError错误,也不会靠回收具有强引用的对象来解决内存不足的问题,因此可以说回收强引用解决不了内存不足的问题。