类的鼻祖——Object类

万事万物都有个源头,不可能无缘无故来,也不可能无缘无故去。

Java中的类库和自定类,它们的鼻祖就是Object类。因而,正如《Thinking in Java》所言,“Everything is Object。”实际上就是说明了Java类的鼻祖是Object类,一切类都继承于Object。虽说Java类是单一继承机制,但是,可以逐层地延展继承下去,直至达到目标。

Object类设计在java.lang包里,这是Java自动调用的包,若是使用其他包里面的类和接口,需要引入相应的包结构。Object类是类层次结构的根类。每个类都使用Object作为超类,所有对象(包括数组)都可以实现这个类的方法。

Object类提供以下方法:

构造方法 public Object()

一般方法

protected  Objectclone()

创建并返回此对象的一个副本。

booleanequals(Object obj)

指示某个其他对象是否与此对象“相等”。

protected  voidfinalize()

当垃圾回收器确定不存在对该对象的更多引用时,由对象的垃圾回收器调用此方法。

ClassgetClass()

返回一个对象的运行时类。

inthashCode()

返回该对象的哈希码值。

voidnotify()

唤醒在此对象监视器上等待的单个线程。

voidnotifyAll()

唤醒在此对象监视器上等待的所有线程。

StringtoString()

返回该对象的字符串表示。

voidwait()

导致当前的线程等待,直到其他线程调用此对象的notify()方法或notifyAll()方法。

voidwait(long timeout)

导致当前的线程等待,直到其他线程调用此对象的notify()方法或notifyAll()方法,或者超过指定的时间量。

voidwait(long timeout, int nanos)

导致当前的线程等待,直到其他线程调用此对象的notify()方法或notifyAll()方法,或者其他某个线程中断当前线程,或者已超过某个实际时间量。

总结:

1)Object类是万类的鼻祖。

2)一切皆为对象,任何类都拥有Object类的方法,任何类的对象都可以赋给Object类的引用,换句话说,即任何类可以“伪装”为Object类。

你可能感兴趣的:(类的鼻祖——Object类)