Object

getClass

getClass obtains a reference to the class associated with this
object.

Returns:

the class of this instance, never null.

hashCode

public int hashCode()

hashCode returns a hash code for this object. The hash code must
be equal for two objects a and b if a.equals(b) is true.

The default implementation returns System.identityHashCode(this).

Returns:

a hash code value.

notify

public final void notify()

notify wakes up one thread of the set of threads wait()ing for
this object's monitor. notify may only be called if the current
thread has entered this object's monitor (by a synchronized()
statement or a synchronized method). The thread that is woken up
may resume execution as soon as the current thread releases the
monitor associated with this object.

For JamaicaVM: The thread that wait()ed for notification longest
will be woken up first.

notifyAll

public final void notifyAll()

notifyAll wakes up all threads of the set of threads wait()ing
for this object's monitor. notifyAll may only be called if the
current thread has entered this object's monitor (by a
synchronized() statement or a synchronized method). The threads
that are woken up may resume execution as soon as the current
thread releases the monitor associated with this object.

For JamaicaVM: The thread that wait()ed for notification longest
will be woken up first.

finalize

finalize may be called by the memory management of the virtual
machine when it determined that this instance's memory is
unreachable and can be reclaimed.

NOTE: The use of finalize() is strongly discouraged for realtime
or safety-critical code. This method should only be used for
debugging purposes. If used as a last resort to reclaim
non-memory resources, finalize() should indicate the resource leak
with a loud error message.

There is no guarantee that finalize() will be called, the memory
management may decide not to reclaim this object's memory or to
delay the call to finalize() to an unspecified point in time. It
is therefore recommended never to use the finalize method to
release any resources (files, network connections, non-Java
memory, etc.) since releasing of these resource may be delayed
perpetually.

The order of finalization is not specified, i.e., the finalize
method of any two objects that become unreachable may be called
in an arbitrary order. It therefore has to be assumed that when
finalize() is called on an object, that the finalize() method of
any object that is only reachable through this object() has been
called as well or is called simultaneously by another thread.

The presence of a finalize-method in any sub-class of Object
causes the reclamation of the memory of this object to be delayed
until the finalize() method has been executed. The finalize()
method is typically executed by the finalizer thread (that may
run at a low priority) or by a call to Runtime.runFinalization().

Any code sequence that creates instances of a class that defines
a finalize() method must therefore ensure that sufficient CPU
time is allocated to the finalizer thread or that
Runtime.runFinalization() is called regularly such that the
finalize() methods can be executed and the object's memory can be
reclaimed.

The finalize method itself should never block or run for long
times since it would otherwise block the finalizer thread or the
thread that called Runtime.runFinalization() and prevent the
execution other finalize() method and consequently prevent the
reclamation of these object's memory.

For objects that are allocated in a javax.realtime.ScopedMemory,
the finalize() methods will be called when this scoped memory is
exited by the last thread. Unlike HeapMemory, which is
controlled by the garbage collector, ScopedMemory provides a
defined execution point for the finalize() mehods and it is
therefore safer to use finalize() here.

Throws:

Throwable - this method may throw any exception, it will be
ignored by the finalizer thread or by Runtime.runFinalization.