240 发简信
IP属地:广东
  • 博主,你写的比较int和Integer的示例中,第5个例子, int a0 = 128;Integer a1 = 1; a0==a1 的输出应该时false,值都不一样。

    Carson带你学Java:关于数据类型的那些必知必会

    前言 在Java中,数据类型的使用通常会被很多开发者忽略 本文全面 & 详细解析 Java的数据类型,含基本数据类型、枚举类型 & 引用类型,希望您们会喜欢 目录 1. 分类...

  • 刚才验证了一下,是我理解错了。当内存不足时,使用垃圾回收,软引用所引用的对象被回收。并且软引用加在了ReferenceQueue中。我没有遇到内存不足,调用System.gc(),软引用没有被回收,ReferenceQueue中也没有相应的软引用。

    Carson带你学Java:深入解析引用类型-强、软、弱、虚

    前言 在Java中,对象的引用类型十分重要,因为这取决于 JVM的GC活动 & 活动 本文全面 & 详细解析 Java的4种引用类型:强引用、软引用、弱引用、虚引用,希望您们...

  • 在虚引用PhantomReference中的示例:
    // 2. 声明虚引用
    PhantomReference phantom = new PhantomReference(digit);
    你提到虚引用必须配合引用队列使用,你没有在constructor中添加引用队列。
    官方的构造器如下:
    /**
    * Creates a new phantom reference that refers to the given object and
    * is registered with the given queue.
    *
    * <p> It is possible to create a phantom reference with a <tt>null</tt>
    * queue, but such a reference is completely useless: Its <tt>get</tt>
    * method will always return null and, since it does not have a queue, it
    * will never be enqueued.
    *
    * @param referent the object the new phantom reference will refer to
    * @param q the queue with which the reference is to be registered,
    * or <tt>null</tt> if registration is not required
    */
    public PhantomReference(T referent, ReferenceQueue<? super T> q) {
    super(referent, q);
    }

    Carson带你学Java:深入解析引用类型-强、软、弱、虚

    前言 在Java中,对象的引用类型十分重要,因为这取决于 JVM的GC活动 & 活动 本文全面 & 详细解析 Java的4种引用类型:强引用、软引用、弱引用、虚引用,希望您们...

  • 博主,你在软引用SoftReference部分的示例中写到:“ b. 若软引用所引用的对象被垃圾回收器回收,JVM就会把这个软引用加入到与之关联的引用队列中”。我看了一下源码上的注解:“ Creates a new soft reference that refers to the given object and is registered with the given queue.” 貌似没有提到垃圾回收,在回收前就已经把当前软引用加到引用队列中了?
    /**
    * Creates a new soft reference that refers to the given object and is
    * registered with the given queue.
    *
    * @param referent object the new soft reference will refer to
    * @param q the queue with which the reference is to be registered,
    * or <tt>null</tt> if registration is not required
    *
    */
    public SoftReference(T referent, ReferenceQueue<? super T> q) {
    super(referent, q);
    this.timestamp = clock;
    }

    Carson带你学Java:深入解析引用类型-强、软、弱、虚

    前言 在Java中,对象的引用类型十分重要,因为这取决于 JVM的GC活动 & 活动 本文全面 & 详细解析 Java的4种引用类型:强引用、软引用、弱引用、虚引用,希望您们...