Object 类被子类常重写的方法

本文介绍了Java中Object类的四个常被子类重写的方法:toString(), equals(), hashCode() 和 getClass()。详细讲解了它们的作用,特别是在equals()和hashCode()一起使用时的规则。同时,通过示例说明了为何以及如何重写equals()和toString()方法,以满足特定的比较和字符串表示需求。" 120580629,8707957,SHA-1算法解析与C++实现,"['算法', 'c++', '密码学']
摘要由CSDN通过智能技术生成

Object 类

是所有类的直接或间接父类;

一个类没有使用extends关键字明确标识继承关系,默认继承Object类;


1、Object 类被子类常重写的方法

1.1 toString()

  • 返回当前对象本身的有关信息,按字符串对象返回;

1.2 equals()

  • 比较两对象是否是同一对象,是则返回true;

1.3 hashCode()

  • 返回该对象的哈希码值 ;

    一般与equals一起用,hash算法算出的一系列值 ,比较对象时

    如果对象equals相等,hashcode也相等,是同一对象。

1.4 getClass()

  • 获取当前对象所属类的信息,返回Class对象(反射机制);

note:

Object类的equals()方法:

操作符 ==

  • 默认情况下,equals() 作用和 == 作用是一样的,都是比较是否为同一对象!!
  1. **简单数据类型,直接比较值。> 1==2 **为false
  2. 引用类型,比较两者是否为 同一对象;> 这时比较的是地址
  • 没有对equals进行重写的类(比如我们自己写的类)就只能从Object类中继承equals方法,此时 equals方法 与 == 就也是等效的,除非我们在此类中重写equals() 。

更多可以参看:

https://www.cnblogs.com/zjc950516/p/7877511.html

2、 重写equals()

我们先看:

// 测试类
public static void main(String[] args) {
   
        Stu s1=new Stu("张",18,50);
        Stu s2=new Stu("张",18,50);
        
        // 此时还没重写equals()
        // ta与&#
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值