`

FinalReference

阅读更多
FinalReference


一、总结

1.jdk 1.8.0

2.特点
  • 强引用可以直接访问目标对象;
  • 强引用锁指向的对象在任何时候都不会被系统回收。JVM宁愿抛出OOM异常也不回收强引用所指向的对象;
  • 强应用可能导致内存泄露;
  • FinalReference  不对外提供,类的访问权限 protect



二、源码分析

/* Final references, used to implement finalization */

class FinalReference<T> extends Reference<T> {

    public FinalReference(T referent, ReferenceQueue<? super T> q) {
	super(referent, q);
    }

}


三、

Object obj = new Object();


只要强引用存在,GC就不会回收被引用的对象


博文参考:
Java引用类型


分享到:
评论

相关推荐

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

    当对象被垃圾回收时,FinalReference 会保持到 finalize() 方法执行完成,然后才会被回收。 总结,java.lang.ref 包中的四种引用类型——StrongReference、SoftReference、WeakReference 和 PhantomReference,提供...

    Java进阶知识点汇总.pdf

    - **FinalReference**(强引用):最常用的引用类型,只要还有强引用指向一个对象,那么这个对象就不会被垃圾回收。 ##### java.util包下的类 - **ArrayList**:动态数组实现的列表,支持快速随机访问。 - **...

    详解java中finalize的实现与相应的执行过程

    需要注意的是,由于垃圾收集器的保守策略,即使对象的引用已经被设置为null,`FinalizerThread`仍然可以在`finalize`方法执行期间获取到对象,因为在这个阶段,对象的引用仍然存在于`FinalReference`中。 总结来说...

    Java中针对finalize的实现和相应的执行过程

    FinalReference引用  此类是一个package类型,表示它并不是公开的一部分,继承自Reference, 即表示也是一种特定的引用类型,因此每个包装在其中的对象在被回收之前,自己都会放到指定的referqyebceQueue当中.  ...

    java的引用类型的详细介绍

    1. 强引用(FinalReference): - 默认情况下,大部分对象的引用都是强引用。强引用是Java中最常见的引用类型,类似于C++中的指针。 - 它们直接指向对象,可以无限制地访问和操作目标对象。 - 强引用的对象在任何...

    Java Reference源码解析

    1. 强引用(FinalReference):强引用指的是,程序中有直接可达的引用,而不需要通过任何引用对象,如Object obj = new Object();中,obj为强引用。 2. 软引用(SoftReference):软引用,非强引用,但是可以通过软...

    详解java中Reference的实现与相应的执行过程

    4. **FinalReference**:专为 `finalize()` 方法设计,确保在对象被回收前调用 finalize 方法。通常不直接使用,而是由 JVM 管理。 5. **PhantomReference**:最弱的引用类型,`get()` 总是返回 `null`,且对象不能...

Global site tag (gtag.js) - Google Analytics