object类的方法

Object类的方法包括:

toString()

返回对象的字符串表示。

默认实现返回对象的类名和内存地址的十六进制表示。

可以通过重写此方法来提供对象的自定义字符串表示。

equals(Object obj)

比较两个对象是否相等。

默认实现比较的是对象的引用(即内存地址)。

可以通过重写此方法来定义自己的相等性判断标准,例如比较两个对象的内容是否相同。

hashCode()

返回对象的哈希码值。

在基于哈希的集合(如HashMap、HashSet)中,对象的哈希码用于快速定位对象。

当重写equals方法时,通常也需要同时重写hashCode方法,以保持相等对象具有相同的哈希码。

getClass()

返回当前对象的Class类型实例。

通常与反射结合使用,用于动态获取对象的类型信息。

clone()

创建当前对象的副本。

提供了浅拷贝的功能,如果类中包含引用类型字段,克隆的对象与原对象共享这些引用。

若需要深拷贝,需要重写clone方法。

finalize()

这是一个已废弃的方法,用于在对象被垃圾回收器回收之前执行一些清理工作。

由于垃圾回收器的运行时间是不确定的,因此不建议依赖这个方法进行资源清理。

registerNatives()

用于注册本地方法,使得Java代码能够调用本地库中的函数。

这个方法通常由Java虚拟机实现,并且是本地方法(native method)的注册入口。

wait() 、 notify()、 notifyAll()

这些方法用于线程间的通信和协作,允许一个线程等待其他线程的通知或中断等待状态。

这些方法必须在同步块或同步方法中使用,并且在使用前必须检查对象是否处于锁定状态。

这些方法在Java编程中非常常用,了解它们的用法和重写规则对于编写高效、可维护的代码至关重要。