public abstract class

Ref

extends Object
java.lang.Object
   ↳ sun.misc.Ref

This class is deprecated.
This class has been replaced by java.util.SoftReference.

Class Overview

A "Ref" is an indirect reference to an object that the garbage collector knows about. An application should override the reconstitute() method with one that will construct the object based on information in the Ref, often by reading from a file. The get() method retains a cache of the result of the last call to reconstitute() in the Ref. When space gets tight, the garbage collector will clear old Ref cache entries when there are no other pointers to the object. In normal usage, Ref will always be subclassed. The subclass will add the instance variables necessary for the reconstitute() method to work. It will also add a constructor to set them up, and write a version of reconstitute().

See Also
  • java.util.SoftReference

Summary

Public Constructors
Ref()
Constructs a new Ref.
Ref(Object thing)
Constructs a new Ref that initially points to thing.
Public Methods
synchronized Object check()
Checks to see what object is being pointed at by this Ref and returns it.
synchronized void flush()
Flushes the cached object.
synchronized Object get()
Returns a pointer to the object referenced by this Ref.
abstract Object reconstitute()
Returns a pointer to the object referenced by this Ref by reconstituting it from some external source (such as a file).
synchronized void setThing(Object thing)
Sets the thing to the specified object.
[Expand]
Inherited Methods
From class java.lang.Object

Public Constructors

public Ref ()

Constructs a new Ref.

public Ref (Object thing)

Constructs a new Ref that initially points to thing.

Public Methods

public synchronized Object check ()

Checks to see what object is being pointed at by this Ref and returns it.

public synchronized void flush ()

Flushes the cached object. Forces the next invocation of get() to invoke reconstitute().

public synchronized Object get ()

Returns a pointer to the object referenced by this Ref. If the object has been thrown away by the garbage collector, it will be reconstituted. This method does everything necessary to ensure that the garbage collector throws things away in Least Recently Used(LRU) order. Applications should never override this method. The get() method effectively caches calls to reconstitute().

public abstract Object reconstitute ()

Returns a pointer to the object referenced by this Ref by reconstituting it from some external source (such as a file). This method should not bother with caching since the method get() will deal with that.

In normal usage, Ref will always be subclassed. The subclass will add the instance variables necessary for reconstitute() to work. It will also add a constructor to set them up, and write a version of reconstitute().

public synchronized void setThing (Object thing)

Sets the thing to the specified object.

Parameters
thing the specified object