`
zhouzhiande
  • 浏览: 4853 次
  • 性别: Icon_minigender_1
  • 来自: 福建
最近访客 更多访客>>
文章分类
社区版块
存档分类
最新评论

java.lang.ref 包与四种引用

阅读更多
java.lang.ref 的引用

http://www.k99k.com/texts/java-reference.html

强引用:手动释放时,会被回收
软引用:内存不足时,会被回收
弱引用:随时可能被回收
虚引用:与没有引用类似


String a = new String("hello");//强引用
a = null;//释放强引用

ReferenceQueue<String> rq = new ReferenceQueue<String>();
SoftReference<String> ref= new SoftReference<String>(new String("hello"), rq);//软引用

String str = new String("hello"); 
str = null;//释放强引用
ReferenceQueue<String> rq = new ReferenceQueue<String>(); // 回收队列,用于存放被回收的对象
WeakReference<String> wf = new WeakReference<String>(str, rq); //弱引用


ReferenceQueue<String> rq = new ReferenceQueue<String>();
PhantomReference<String> ref= new PhantomReference<String>(new String("hello"), rq);//虚引用
分享到:
评论

相关推荐

    深入探讨 java.lang.ref 包1

    总结,Java.lang.ref 包提供了四种不同强度的引用,它们各自在不同的场景下发挥着重要作用。理解并熟练掌握这些引用类型,可以帮助开发者更精细地控制对象的生命周期,从而实现更加高效和稳定的程序设计。

    Struts的java.lang.ClassNotFoundException: org.apache.commons.dbcp.BasicDataSource异常的解决方法

    Apache Commons DBCP(Database Connection Pool)是Apache提供的一个数据库连接池实现,它为Java应用程序提供了一种管理数据库连接的方式,通过复用已存在的数据库连接,减少了创建和销毁数据库连接的开销,从而...

    引用包java.lang.ref中几种引用详解 2 -- 测试代码

    NULL 博文链接:https://jackyin5918.iteye.com/blog/1882071

    Java核心API

    Java.lang.ref包激活了与垃圾收集器的交互,通过弱引用、软引用等机制,开发者可以更细粒度地控制内存管理。 #### Java.lang.reflect Java.lang.reflect包提供了在运行时分析代码结构和行为的能力,是实现反射、...

    API规范JAVA.pdf

    18、引用对象:java.lang.ref 提供了引用对象类,支持在某种程度上与垃圾回收器之间的交互。 * java.lang.ref 是 Java 2 Platform 的一部分,提供了引用对象类,支持在某种程度上与垃圾回收器之间的交互。 19、...

    java类包的介绍与使用

    `java.lang.ref` 提供了与垃圾收集器交互的引用对象类,如 `WeakReference`, `SoftReference`。 `java.lang.reflect` 允许程序在运行时检查类和对象的结构。 `java.math` 包提供高精度的数学运算,如 `BigInteger`...

    深入探讨 java-lang-ref 包.docx

    总结,java.lang.ref 包中的四种引用类型——StrongReference、SoftReference、WeakReference 和 PhantomReference,提供了不同的内存管理策略,适应不同的场景需求。强引用是最常用的引用类型,但在处理大对象或...

    JAVA_API1.6文档(中文)

    java.lang.ref 提供了引用对象类,支持在某种程度上与垃圾回收器之间的交互。 java.lang.reflect 提供类和接口,以获得关于类和对象的反射信息。 java.math 提供用于执行任意精度整数算法 (BigInteger) 和任意精度...

    Java各个包简述.pdf

    21. **java.lang.ref**:提供引用对象,允许一定程度上与垃圾收集器交互。 22. **java.lang.reflect**:反射机制的类和接口,用于获取类和对象的信息。 23. **java.math**:提供大整数(BigInteger)和高精度小数...

    1_6_zh_CN.CHM

    java.lang.ref 提供了引用对象类,支持在某种程度上与垃圾回收器之间的交互。 java.lang.reflect 提供类和接口,以获得关于类和对象的反射信息。 java.math 提供用于执行任意精度整数算法 (BigInteger) 和任意精度...

    JDK_API_1_6_zh_CN_downcc.com.zip 良心一级分

    java.lang.ref 提供了引用对象类,支持在某种程度上与垃圾回收器之间的交互。 java.lang.reflect 提供类和接口,以获得关于类和对象的反射信息。 java.math 提供用于执行任意精度整数算法 (BigInteger) 和任意精度...

    Java 1.6 API 中文 New

    java.lang.ref 提供了引用对象类,支持在某种程度上与垃圾回收器之间的交互。 java.lang.reflect 提供类和接口,以获得关于类和对象的反射信息。 java.math 提供用于执行任意精度整数算法 (BigInteger) 和任意精度...

    [Java参考文档].JDK_API 1.6

    java.lang.ref 提供了引用对象类,支持在某种程度上与垃圾回收器之间的交互。 java.lang.reflect 提供类和接口,以获得关于类和对象的反射信息。 java.math 提供用于执行任意精度整数算法 (BigInteger) 和任意精度...

    javaApi分类[参考].pdf

    18. **Java.lang.ref**: 引用对象,与垃圾收集器交互,例如软引用、弱引用和虚引用。 19. **Java.lang.reflect**: 反射API,允许程序在运行时检查类和对象的属性。 20. **Java.math**: 提供BigInteger和BigDecimal...

    java api最新7.0

    java.lang.ref 提供了引用对象类,支持在某种程度上与垃圾回收器之间的交互。 java.lang.reflect 提供类和接口,以获得关于类和对象的反射信息。 java.math 提供用于执行任意精度整数算法 (BigInteger) 和任意精度...

    JavaAPI1.6中文chm文档 part1

    java.lang.ref 提供了引用对象类,支持在某种程度上与垃圾回收器之间的交互。 java.lang.reflect 提供类和接口,以获得关于类和对象的反射信息。 java.math 提供用于执行任意精度整数算法 (BigInteger) 和任意精度...

    java jdk-api-1.6 中文 chmd

    java.lang.ref 提供了引用对象类,支持在某种程度上与垃圾回收器之间的交互。 java.lang.reflect 提供类和接口,以获得关于类和对象的反射信息。 java.math 提供用于执行任意精度整数算法 (BigInteger) 和任意精度...

    Java Source Learning

    深入`java.lang.ref`和`java.lang.Runtime`等相关源码,可以理解不同类型的引用和GC的工作原理。 6. **反射机制**:Java的反射API允许在运行时动态访问类的信息。通过`java.lang.Class`和`java.lang.reflect`包,...

    java源码之jdk源码

    - 虽然JVM的垃圾收集器的源码在OpenJDK中,但`java.lang.ref`包提供了弱引用、软引用和 phantom 引用,帮助理解内存管理和避免内存泄漏。 8. **字符串处理(String)**: - `java.lang.String`类是不可变的,了解...

Global site tag (gtag.js) - Google Analytics