Module java.base
Package java.lang

Class Object

java.lang.Object

public class Object
Object is the root of the java class hierarchy. All non-base types respond to the messages defined in this class.
  • Constructor Summary

    Constructors
    Constructor
    Description
    Constructs a new instance of this class.
  • Method Summary

    Modifier and Type
    Method
    Description
    protected Object
    Answers a new instance of the same class as the receiver, whose slots have been filled in with the values in the slots of the receiver.
    boolean
    Compares the argument to the receiver, and answers true if they represent the same object using a class specific comparison.
    protected void
    Deprecated.
    May cause performance issues, deadlocks and hangs.
    final Class<? extends Object>
    Answers the unique instance of java.lang.Class which represents the class of the receiver.
    int
    Answers an integer hash code for the receiver.
    final void
    Causes one thread which is waiting on the receiver to be made ready to run.
    final void
    Causes all threads which are waiting on the receiver to be made ready to run.
    Answers a string containing a concise, human-readable description of the receiver.
    final void
    Causes the thread which sent this message to be made not ready to run pending some change in the receiver (as indicated by notify or notifyAll).
    final void
    wait(long time)
    Causes the thread which sent this message to be made not ready to run either pending some change in the receiver (as indicated by notify or notifyAll) or the expiration of the timeout.
    final void
    wait(long time, int frac)
    Causes the thread which sent this message to be made not ready to run either pending some change in the receiver (as indicated by notify or notifyAll) or the expiration of the timeout.
  • Constructor Details

    • Object

      public Object()
      Constructs a new instance of this class.
  • Method Details

    • clone

      protected Object clone() throws CloneNotSupportedException
      Answers a new instance of the same class as the receiver, whose slots have been filled in with the values in the slots of the receiver.

      Classes which wish to support cloning must specify that they implement the Cloneable interface, since the native implementation checks for this.

      Returns:
      Object a shallow copy of this object.
      Throws:
      CloneNotSupportedException - if the receiver's class does not implement the interface Cloneable.
    • equals

      public boolean equals(Object o)
      Compares the argument to the receiver, and answers true if they represent the same object using a class specific comparison. The implementation in Object answers true only if the argument is the exact same object as the receiver (==).
      Parameters:
      o - Object the object to compare with this object.
      Returns:
      boolean true if the object is the same as this object false if it is different from this object.
      See Also:
    • finalize

      @Deprecated(forRemoval=false, since="9") protected void finalize() throws Throwable
      Deprecated.
      May cause performance issues, deadlocks and hangs. Errors in finalizers can lead to resource leaks.
      Called by the virtual machine when there are no longer any (non-weak) references to the receiver. Subclasses can use this facility to guarantee that any associated resources are cleaned up before the receiver is garbage collected. Uncaught exceptions which are thrown during the running of the method cause it to terminate immediately, but are otherwise ignored.

      Note: The virtual machine assumes that the implementation in class Object is empty.

      Throws:
      Throwable - The virtual machine ignores any exceptions which are thrown during finalization.
    • getClass

      public final Class<? extends Object> getClass()
      Answers the unique instance of java.lang.Class which represents the class of the receiver.
      Returns:
      the receiver's Class
    • hashCode

      public int hashCode()
      Answers an integer hash code for the receiver. Any two objects which answer true when passed to .equals must answer the same value for this method.
      Returns:
      the receiver's hash.
      See Also:
    • notify

      public final void notify()
      Causes one thread which is waiting on the receiver to be made ready to run. This does not guarantee that the thread will immediately run. The method can only be invoked by a thread which owns the receiver's monitor.
      See Also:
    • notifyAll

      public final void notifyAll()
      Causes all threads which are waiting on the receiver to be made ready to run. The threads are scheduled according to their priorities as specified in class Thread. Between any two threads of the same priority the one which waited first will be the first thread that runs after being notified. The method can only be invoked by a thread which owns the receiver's monitor.
      See Also:
    • toString

      public String toString()
      Answers a string containing a concise, human-readable description of the receiver.
      Returns:
      String a printable representation for the receiver.
    • wait

      public final void wait() throws InterruptedException
      Causes the thread which sent this message to be made not ready to run pending some change in the receiver (as indicated by notify or notifyAll). The method can only be invoked by a thread which owns the receiver's monitor. A waiting thread can be sent interrupt() to cause it to prematurely stop waiting, so senders of wait should check that the condition they were waiting for has been met.

      When the thread waits, it gives up ownership of the receiver's monitor. When it is notified (or interrupted) it re-acquires the monitor before it starts running.

      Throws:
      InterruptedException - to interrupt the wait.
      See Also:
    • wait

      public final void wait(long time) throws InterruptedException
      Causes the thread which sent this message to be made not ready to run either pending some change in the receiver (as indicated by notify or notifyAll) or the expiration of the timeout. The method can only be invoked by a thread which owns the receiver's monitor. A waiting thread can be sent interrupt() to cause it to prematurely stop waiting, so senders of wait should check that the condition they were waiting for has been met.

      When the thread waits, it gives up ownership of the receiver's monitor. When it is notified (or interrupted) it re-acquires the monitor before it starts running.

      Parameters:
      time - long The maximum time to wait in milliseconds.
      Throws:
      InterruptedException - to interrupt the wait.
      See Also:
    • wait

      public final void wait(long time, int frac) throws InterruptedException
      Causes the thread which sent this message to be made not ready to run either pending some change in the receiver (as indicated by notify or notifyAll) or the expiration of the timeout. The method can only be invoked by a thread which owns the receiver's monitor. A waiting thread can be sent interrupt() to cause it to prematurely stop waiting, so senders of wait should check that the condition they were waiting for has been met.

      When the thread waits, it gives up ownership of the receiver's monitor. When it is notified (or interrupted) it re-acquires the monitor before it starts running.

      Parameters:
      time - long The maximum time to wait in milliseconds.
      frac - int The fraction of a mSec to wait, specified in nano seconds.
      Throws:
      InterruptedException - to interrupt the wait.
      See Also: