Object类各个方法的详解

Posted 唐僧洗澡不秃头

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Object类各个方法的详解相关的知识,希望对你有一定的参考价值。

getClass

final native getClass 获取当前运行时对象的 Class 对象

hashCode

native hashCode 返回对象的 hash 码

clone

native clone 拷贝当前对象

浅拷贝:仅进行值拷贝
深拷贝:进行值拷贝和引用类型拷贝,新建对象

equals

equals 通过内存地址比较两个对象是否相等

底层用的 this == obj
String 类重写了这个方法使用值来比较是否相等,通过比较字符数组的每个元素

toString

toString 返回类名@哈希码的 16 进制

 getClass().getName() + "@" + Integer.toHexString(hashCode())

notify

native notify 唤醒当前对象监视器的任一个线程

notifyAll

native notifyAll 唤醒当前对象监视器上的所有线程

wait

final native wait 暂停线程的执行

三个不同参数方法  
native  wait(timeout);
  	
final  wait()一直等待
	wait(0)
	
final wait(long timeout, int nanos)等待多少毫秒
	if (nanos > 0) 
   	timeout++;

与 Thread.sleep(long time) 相比,sleep 使当前线程休眠一段时间,并没有释放该对象的锁,wait 释放了锁

finalize

finalize 对象被垃圾回收器回收时执行的方法,默认为空实现,可以参考c++的析构函数

以上是关于Object类各个方法的详解的主要内容,如果未能解决你的问题,请参考以下文章

Object类各个方法的详解

Object类详解

java源码学习-详解Object类

java的object类函数详解

Java:Object类详解

Java面向对象中 Object类的详解和其中的equals()和toString()方法的详解