zoukankan      html  css  js  c++  java
  • java中引用

    java中引用分为,强,弱,虚,软

    (1)强引用

    使用最普遍的引用。如果一个对象具有强引用,它绝对不会被gc回收。如果内存空间不足了,gc宁愿抛出OutOfMemoryError,也不是会回收具有强引用的对象。

    (2)软引用

    如果一个对象只具有软引用,则内存空间足够时不会回收它,但内存空间不够时就会回收这部分对象。只要这个具有软引用对象没有被回收,程序就可以正常使用。

    (3)弱引用

    如果一个对象只具有弱引用,则不管内存空间够不够,当gc扫描到它时就会回收它。

    (4)虚引用

    如果一个对象只具有虚引用,那么它就和没有任何引用一样,任何时候都可能被gc回收。

    软(弱、虚)引用必须和一个引用队列(ReferenceQueue)一起使用,当gc回收这个软(弱、虚)引用引用的对象时,会把这个软(弱、虚)引用放到这个引用队列中。

    比如,上述的Entry是一个弱引用,它引用的对象是key,当key被回收时,Entry会被放到queue中。

  • 相关阅读:
    spring自定义标签
    shell脚本实战
    redis使用场景
    了解并安装Nginx
    查看jar包依赖树
    从一道索引数据结构面试题看B树、B+树
    11条sql技巧
    or/in/union与索引优化
    动态规划
    实现快速迭代的引擎设计
  • 原文地址:https://www.cnblogs.com/xiufengchen/p/10722877.html
Copyright © 2011-2022 走看看