站内搜索: 请输入搜索关键词
当前页面: 在线文档首页 > JDK 5 Documentation v1.1.8, Java 2 SDK 英文文档

Class java.lang.Object - JDK 5 Documentation v1.1.8, Java 2 SDK 英文文档

All Packages  Class Hierarchy  This Package  Previous  Next  Index

Class java.lang.Object

java.lang.Object

public class Object
Class Object is the root of the class hierarchy. Every class has Object as a superclass. All objects, including arrays, implement the methods of this class.

See Also:
Class

Constructor Index

 o Object()

Method Index

 o clone()
Creates a new object of the same class as this object.
 o equals(Object)
Compares two Objects for equality.
 o finalize()
Called by the garbage collector on an object when garbage collection determines that there are no more references to the object.
 o getClass()
Returns the runtime class of an object.
 o hashCode()
Returns a hash code value for the object.
 o notify()
Wakes up a single thread that is waiting on this object's monitor.
 o notifyAll()
Wakes up all threads that are waiting on this object's monitor.
 o toString()
Returns a string representation of the object.
 o wait()
Waits to be notified by another thread of a change in this object.
 o wait(long)
Waits to be notified by another thread of a change in this object.
 o wait(long, int)
Waits to be notified by another thread of a change in this object.

Constructors

 o Object
 public Object()

Methods

 o getClass
 public final native Class getClass()
Returns the runtime class of an object.

Returns:
the object of type Class that represents the runtime class of the object.
 o hashCode
 public native int hashCode()
Returns a hash code value for the object. This method is supported for the benefit of hashtables such as those provided by java.util.Hashtable.

The general contract of hashCode is:

  • Whenever it is invoked on the same object more than once during an execution of a Java application, the hashCode method must consistently return the same integer. This integer need not remain consistent from one execution of an application to another execution of the same application.
  • If two objects are equal according to the equals method, then calling the hashCode method on each of the two objects must produce the same integer result.

Returns:
a hash code value for this object.
See Also:
equals, Hashtable
 o equals
 public boolean equals(Object obj)
Compares two Objects for equality.

The equals method implements an equivalence relation:

  • It is reflexive: for any reference value x, x.equals(x) should return true.
  • It is symmetric: for any reference values x and y, x.equals(y) should return true if and only if y.equals(x) returns true.
  • It is transitive: for any reference values x, y, and z, if x.equals(y) returns true and y.equals(z) returns true, then x.equals(z) should return true.
  • It is consistent: for any reference values x and y, multiple invocations of x.equals(y) consistently return true or consistently return false.
  • For any reference value x, x.equals(null) should return false.

The equals method for class Object implements the most discriminating possible equivalence relation on objects; that is, for any reference values x and y, this method returns true if and only if x and y refer to the same object (x==y has the value true).

Parameters:
obj - the reference object with which to compare.
Returns:
true if this object is the same as the obj argument; false otherwise.
See Also:
hashCode, Hashtable
 o clone
 protected native Object clone() throws CloneNotSupportedException
Creates a new object of the same class as this object. It then initializes each of the new object's fields by assigning it the same value as the corresponding field in this object. No constructor is called.

The clone method of class Object will only clone an object whose class indicates that it is willing for its instances to be cloned. A class indicates that its instances can be cloned by declaring that it implements the Cloneable interface.

Returns:
a clone of this instance.
Throws: CloneNotSupportedException
if the object's class does not support the Cloneable interface. Subclasses that override the clone method can also throw this exception to indicate that an instance cannot be cloned.
Throws: OutOfMemoryError
if there is not enough memory.
See Also:
Cloneable
 o toString
 public String toString()
Returns a string representation of the object. In general, the toString method returns a string that "textually represents" this object. The result should be a concise but informative representation that is easy for a person to read. It is recommendedthat all subclasses override this method.

The toString method for class Object returns a string consisting of the name of the class of which the object is an instance, the at-sign character `@', and the unsigned hexadecimal representation of the hash code of the object.

Returns:
a string representation of the object.
 o notify
 public final native void notify()
Wakes up a single thread that is waiting on this object's monitor. A thread waits on an object's monitor by calling one of the wait methods.

This method should only be called by a thread that is the owner of this object's monitor. A thread becomes the owner of the object's monitor in one of three ways:

  • By executing a synchronized instance method of that object.
  • By executing the body of a synchronized statement that synchronizes on the object.
  • For objects of type Class, by executing a synchronized static method of that class.

Only one thread at a time can own an object's monitor.

Throws: IllegalMonitorStateException
if the current thread is not the owner of this object's monitor.
See Also:
notifyAll, wait
 o notifyAll
 public final native void notifyAll()
Wakes up all threads that are waiting on this object's monitor. A thread waits on an object's monitor by calling one of the wait methods.

This method should only be called by a thread that is the owner of this object's monitor. See the notify method for a description of the ways in which a thread can become the owner of a monitor.

Throws: IllegalMonitorStateException
if the current thread is not the owner of this object's monitor.
See Also:
notify, wait
 o wait
 public final native void wait(long timeout) throws InterruptedException
Waits to be notified by another thread of a change in this object.

The current thread must own this object's monitor. The thread releases ownership of this monitor and waits until either of the following two conditions has occurred:

  • Another thread notifies threads waiting on this object's monitor to wake up either through a call to the notify method or the notifyAll method.
  • The timeout period, specified by the timeout argument in milliseconds, has elapsed.

The thread then waits until it can re-obtain ownership of the monitor and resumes execution.

This method should only be called by a thread that is the owner of this object's monitor. See the notify method for a description of the ways in which a thread can become the owner of a monitor.

Parameters:
timeout - the maximum time to wait in milliseconds.
Throws: IllegalArgumentException
if the value of timeout is negative.
Throws: IllegalMonitorStateException
if the current thread is not the owner of the object's monitor.
Throws: InterruptedException
if another thread has interrupted this thread.
See Also:
notify, notifyAll
 o wait
 public final void wait(long timeout,
                        int nanos) throws InterruptedException
Waits to be notified by another thread of a change in this object.

This method is similar to the wait method of one argument, but it allows finer control over the amount of time to wait for a notification before giving up.

The current thread must own this object's monitor. The thread releases ownership of this monitor and waits until either of the following two conditions has occurred:

  • Another thread notifies threads waiting on this object's monitor to wake up either through a call to the notify method or the notifyAll method.
  • The timeout period, specified by timeout milliseconds plus nanos nanoseconds arguments, has elapsed.

The thread then waits until it can re-obtain ownership of the monitor and resumes execution

This method should only be called by a thread that is the owner of this object's monitor. See the notify method for a description of the ways in which a thread can become the owner of a monitor.

Parameters:
timeout - the maximum time to wait in milliseconds.
nano - additional time, in nanoseconds range 0-999999.
Throws: IllegalArgumentException
if the value of timeout is negative or the value of nanos is not in the range 0-999999.
Throws: IllegalMonitorStateException
if the current thread is not the owner of this object's monitor.
Throws: InterruptedException
if another thread has interrupted this thread.
 o wait
 public final void wait() throws InterruptedException
Waits to be notified by another thread of a change in this object.

The current thread must own this object's monitor. The thread releases ownership of this monitor and waits until another thread notifies threads waiting on this object's monitor to wake up either through a call to the notify method or the notifyAll method. The thread then waits until it can re-obtain ownership of the monitor and resumes execution.

This method should only be called by a thread that is the owner of this object's monitor. See the notify method for a description of the ways in which a thread can become the owner of a monitor.

Throws: IllegalMonitorStateException
if the current thread is not the owner of the object's monitor.
Throws: InterruptedException
if another thread has interrupted this thread.
See Also:
notify, notifyAll
 o finalize
 protected void finalize() throws Throwable
Called by the garbage collector on an object when garbage collection determines that there are no more references to the object. A subclass overrides the finalize method to dispose of system resources or to perform other cleanup.

Any exception thrown by the finalize method causes the finalization of this object to be halted, but is otherwise ignored.

The finalize method in Object does nothing.

Throws: Throwable
[Need description!]

All Packages  Class Hierarchy  This Package  Previous  Next  Index

Submit a bug or feature - Version 1.1.8 of Java Platform API Specification
Java is a trademark or registered trademark of Sun Microsystems, Inc. in the US and other countries.
Copyright 1995-1999 Sun Microsystems, Inc. 901 San Antonio Road,
Palo Alto, California, 94303, U.S.A. All Rights Reserved.