学习Object类

8 篇文章 1 订阅

Object类

Object类的特点
  • Object类是所有类的默认父类(不需要使用extends显示继承),因此Object类的所有方法(private除外),所有类的对象都能使用
  • java中对Object做了扩充,Object不仅是所有类的父类,只要是引用类型。都是可以向上转型变为Object类,包括数组和接口。Object类型可以接收所有的引用数据类型
  • Object是引用数据类型的最高统一参数,如果你设计的方法需要接收所有的引用数据类型,类型就声明为Object
Object类的源码和方法
  • 源代码:

在这里插入图片描述

  • 方法:

在这里插入图片描述

注:

  • 带绿色小锁子的表示他是public权限
  • 带钥匙的是protected权限
  • 红色小锁子是private权限
toString和equals方法
toString方法
  • toSting():将对象转为字符串进行输出,打印对象的内容,如果一个类不对这个toString进行重写就会默认调用Object类的toString()方法。

在这里插入图片描述

equals方法

在这里插入图片描述

  • Object类的equals默认比较的是当前对象(this)表示的是当前对象,与传入的对象的地址进行比较
    在这里插入图片描述

  • 要想让他们比较相等需要重写equals方法,equals方法的重写步骤

    //重写equals方法
    public  boolean equals(Object obj)
    {
        //1、判断obj是否为空,如果我们传进来的obj为空就不用比较了,直接返回false
        if (obj==null)
        {
            return false;
        }
        //2、判断obj是否就是自己
        if (obj==this)
        {
            return true;
        }
        //3、判断obj类是不是本类的对象,在这本例中也就是需要判断下他是不是student类
        if (!(obj instanceof student))
        {
            return false;
        }
        //4、此时obj一定是student类的对象而且与当前对象不是一个地址
        //让obj向下转型还原为student类,然后比较当前对象的属性和传入的对象的属性
        student stu = (student) obj;
        return this.name.equals(stu.name) && this.age==stu.age;
    
    }
    
  • 此时就相等了在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值