JAVA-Object类的方法分析

本文详细解析了Java中Object类的9个核心方法,包括hashCode()、equals()、toString()、getClass()、wait()、notify()、notifyAll()、finalize()和clone()。hashCode()用于获取对象内存地址的哈希值;equals()默认比较对象引用,可重写以比较内容;toString()返回对象的字符串表示;getClass()获取对象的类信息;wait()、notify()和notifyAll()用于线程同步;finalize()是对象被垃圾回收前调用的方法;clone()用于对象复制。理解并掌握这些方法对于深入理解Java至关重要。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

众所周知Java中的Object类一共有9种方法,并且每一个类都有继承类,如果不写extends关键字,默认继承Object,如果写了extends则继承后面那个父类:
Object类中的方法:

  1. hashCode() 将对象在内存中的地址经过计算得到一个int整数
    public native int hashCode();native修饰的是本地方法,底层使用C语言实现的。

  2. equals() 用来比较两个对象的内容 Object默认效果是==
    ==可以比较基本类型(比较值) 可以比较引用类型(比较地址)
    equals方法时Object类中继承过来的方法 默认效果比较地址
    如果想要改变其规则 可以进行方法重写
    public boolean equals(Object obj){
    return (this == obj);
    }

  3. toString() 打印输出时将对象变成String字符串
    public String toString(){
    return this.getClass().getName()+"@"+Integer.toHexString(this.hashCode());
    }

  4. getClass() 获取对象对应类的类映射(反射)

  5. wait() 线程进入挂起等待状态 存在方法重载

  6. notify() 线程唤醒

  7. notifyAll() 唤醒所有

  8. finalize() 权限修饰符是protected 在对象被GC回收的时候 默认调用执行的方法;
    面试是经常会被问道final,finally,finalize的区别。
    protected void finalize(){}

  9. clone() 权限修饰符是protected 为了克隆对象

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

爱看动漫的小龍

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值