Java中的Object类

类 java.lang.Object

java.lang.Object
public class Object
Object 类是类层次的根类。 每个类都把 Object 作为一个父类。 包含数组在内的全部对象均实现这个类的方法。
来自:
JDK1.0
参见:
Class

构造子索引

Object ()

方法索引

clone ()
创建与该对象的类相同的新对象。
equals (Object)
比较两对象是否相等。
finalize ()
当垃圾回收器确定不存在对该对象的更多引用时,对象的垃圾回收器调用该方法。
getClass ()
返回一个对象的运行时间类。
hashCode ()
返回该对象的散列码值。
notify ()
激活等待在该对象的监视器上的一个线程。
notifyAll ()
激活等待在该对象的监视器上的全部线程。
toString ()
返回该对象的字符串表示。
wait ()
等待这个对象另一个更改线程的通知。
wait (long)
等待这个对象另一个更改线程的通知。
wait (long, int)
等待这个对象另一个更改线程的通知。

构造子

Object
 public Object()

方法

getClass
 public final native Class getClass()
返回一个对象的运行时间类。
返回值:
对象类型为 Class, 它表示该对象的运行时间类。
hashCode
 public native int hashCode()
返回该对象的散列码值。 该方法支持散列表的优点,如 java.util.Hashtable 提供的散列表。
hashCode 的一般合同是:
  • 不管一个 Java 应用程序调用它多少次, hashCode 方法始终返回同一个整数。 当同一应用程序从一个执行转到另一个执行时,该整数不必保持一致。
  • 如果两个对象按照 equals 方法相等, 那么每个对象调入 hashCode 方法必须产生相同的整数结果。
返回值:
该对象的散列值。
参见:
equals , Hashtable
equals
 public boolean equals(Object obj)
比较两对象是否相等。
equals 方法实现一个等价关系:
  • 自反性 : 对任何参考值 x, x.equals(x) 应返回 true
  • 对称性 : 对任何参考值 xy, x.equals(y) 应返回 true 当且仅当 y.equals(x) 返回 true
  • 传递性 : 对任何参考值 xyz,如果 x.equals(y) 返回 true 并且 y.equals(z) 返回 true, 那么 x.equals(z) 应返回 true
  • 一致性 :对任何参考值 xy, 多次调用 x.equals(y) 始终返回 true 或始终返回 false
  • 对任何参考值 x, x.equals(null) 应返回 false
Object 类的相同方法可以实现对象间的最容易识别的可能等价关系。也就是说,对任何参考值 xy, 当且仅当 xy 指向同一个对象( x==y 的值为 true )时, 该方法返回 true
参数:
obj - 比较的参考对象。
返回值:
如果该对象与 obj 变元相同则为 true;否则为 false。
参见:
hashCode , Hashtable
clone
 protected native Object clone() throws CloneNotSupportedException
创建与该对象的类相同的新对象。 然后初始化新建对象域,对应域指定为相同的值。 没有调用构造子。
当一个对象指示愿意复制它的实例时, Object 类的 clone 方法才复制该对象。 当一个类声明它实现 cloneable 接口时,能复制它的实例。
返回值:
该实例的复制。
抛出: CloneNotSupportedException
如果该对象类不支持 cloneable 接口。覆盖了 clone 方法的子类可能抛出此异常,表示不能复制实例。
抛出: OutOfMemoryError
如果没有足够内存。
参见:
Cloneable
toString
 public String toString()
返回该对象的字符串表示。 toString 方法一般返回一个用文本表示这个对象的字符串。 给出的结果是简短明了的表示,这样便于人们读取。 建议任何子类都覆盖这个方法。
ObjecttoString 方法返回一个字符串、有符号 ` @' 字符和该对象的无符号十六进制散列码表示,这里的字符串包括实例对象的类名。
返回值:
该对象的字符串表示。
notify
 public final native void notify()
激活等待在该对象的监视器上的一个线程。 线程通过调用 wait 方法等候在某个对象的监视器中。
只有该对象监视器的拥有者线程才能调用这个方法。 在下列三种情况下,一个线程变为该对象监视器的所有者:
  • 同步执行该对象的实例方法。
  • 执行与该对象的 synchronized 语句体对该对象进行同步。
  • 对类型为 Class, 的对象执行该类的同步静态方法。
一次只能有一个线程拥有对象的监视器。
抛出: IllegalMonitorStateException
若当前线程不是这个对象监视器的所有者。
参见:
notifyAll , wait
notifyAll
 public final native void notifyAll()
激活等待在该对象的监视器上的全部线程。 线程通过调用 wait 方法等候在某个对象的监视器中。
只有该对象监视器的拥有者线程才能调用这个方法。 参见 notify 方法,那里有线程如何成为监视器所有者的说明。
抛出: IllegalMonitorStateException
若当前线程不是这个对象监视器的所有者。
参见:
notify , wait
wait
 public final native void wait(long timeout) throws InterruptedException
等待该对象另一更改线程的通知。
当前线程必须拥有该对象的监视器。线程释放对该监视器的所有权,一直等到以下两个条件之一发生:
  • 通过调用 notify 方法或 notifyAll 方法激活,另一个线程通知等候在该对象监视器上的线程。
  • 毫秒表示的 timeout 参数指定的超时时间已用完。
该线程将等到重新获得对监视器的所有权后才能继续执行。
只有该对象监视器的所有者线程才能调用该方法。 参见 notify 方法,那里有线程如何拥有监视器的方法说明。
参数:
timeout - 用毫秒计算的超时。
抛出: IllegalArgumentException
如果超时值为负。
抛出: IllegalMonitorStateException
若当前线程不是这个对象监视器的所有者。
抛出: InterruptedException
如果另一个线程已中断了该线程。
参见:
notify , notifyAll
wait
 public final void wait(long timeout,
                        int nanos) throws InterruptedException
等待该对象另一个更改线程的通知。
该方法类似于一个参数的 wait 方法,但它允许在放弃之前对同级件待时间量进行更细致的控制。
当前线程必须占有这个对象的监视器。线程释放对这个监视器的所有权,一直等到以下两个条件之一发生:
  • 通过调用 notify 方法或 notifyAll 方法激活,另一个线程通知等候在这个对象监视器上的线程。
  • timeout 毫秒值与 nonos 参数值之和指定的超时时间已用完。
该线程将等到重新获得对监视器的所有权后才能继续执行。
只有该对象监视器的拥有者线程才能调用这个方法。 参见 notify 方法,那里有线程如何占有监视器的方法说明。
参数:
timeout - 用毫秒计算的超时。
nano - 附加时间,纳秒范围为 0-999999。
抛出: IllegalArgumentException
若超时值为负或 nanos 的值不在范围0-999999中。
抛出: IllegalMonitorStateException
若当前线程不是这个对象监视器的所有者。
抛出: InterruptedException
如果另一个线程已中断了该线程。
wait
 public final void wait() throws InterruptedException
等待该对象另一个更改线程的通知。
当前线程必须拥有该对象的监视器。通过调用 notify 方法或 notifyAll 方法激活,该线程释放这个监视器的所有权并等待,直到另一个线程通知激活等候在这个对象监视器上的线程。 该线程将等到重新获得对监视器的所有权后才能继续执行。
只有该对象监视器的拥有者线程才能调用这个方法。 参见 notify 方法,那里有线程如何拥有监视器的方法说明。
抛出: IllegalMonitorStateException
若当前线程不是这个对象监视器的所有者。
抛出: InterruptedException
如果另一个线程已中断了该线程。
参见:
notify , notifyAll
finalize
 protected void finalize() throws Throwable
当垃圾回收器确定不存在对该对象的更多引用时,对象的垃圾回收器调用该方法。 子类覆盖 finalize 方法,以配置系统资源进行其它清除。
finalize 方法抛出的任何异常导致暂停对象终止,但被其它对象忽略。
Object 中的 finialize 方法不执行任何操作。
分享至
一键收藏,随时查看,分享好友!
0人
了这篇文章
类别: Java┆阅读( 0)┆评论( 0) ┆ 返回博主首页┆ 返回博客首页
上一篇 Java的forward reference 下一篇 Java中求String和Array的长度(length)

你可能感兴趣的:(java,类,object,职场,休闲)