Java常用类(一)Object类


Object类是所有Java类的根基类,也就意味着所有的Java对象都拥有Object类的属性和方法。

Object类通常被称之为超类,基类或跟类

当定义一个类时,如果没有使用extends关键字为这个类显示地指定父类,那么该类就会默认继承Object类

Object类常用方法:

String toString()返回该对象的字符串表示

 我们也可以重写toString()如上:

 Object的toString()方法:

所以得到结果:

boolean equals(Object obj)判断某个对象和此对象是否相等

注意:"=="代表比较双方是否相同。如果是基本类型则表示值相等,如果是引用类型则表示地址相等即是同一个对象。equals方法定义“对象内容”是否相等。

 Object的equals方法:

 我们重写equlas方法,这时我们也可重写hashCode方法,保证两个对象拥有相同的哈希值

 得到结果:

Class<?> getClass()返回此Object的运行时类

 结果:

void finalize()  垃圾回收器调用此方法来清理没有被任何引用变量所引用对象的资源 

void wait()  是让当前线程进入等待状态,同时,wait()也会让当前线程释放它所持有的锁。“直到其他线程调用此对象的 notify() 方法或 notifyAll() 方法”,当前线程被唤醒(进入“就绪状态”)

void wait(long timeout)  让当前线程处于“等待(阻塞)状态”,“直到其他线程调用此对象的notify()方法或 notifyAll() 方法,或者超过指定的时间量”,当前线程被唤醒(进入“就绪状态”)。

void notify()  唤醒一个在此对象监视器上等待的线程

void notifyAll()  唤醒在此对象监视器上等待的所有线程