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类详解

2 类实例属性方法详解

java源码学习-详解Object类

一文详解:Java中父子类静态块构造块构造方法成员变量之间的初始化先后顺序与执行先后顺序

java的object类函数详解