当前位置: 代码迷 >> 综合 >> Object类详解(面向对象编程)-------(==和equals())、(hashcode)、(toString)、(finalize)
  详细解决方案

Object类详解(面向对象编程)-------(==和equals())、(hashcode)、(toString)、(finalize)

热度:39   发布时间:2023-11-25 22:47:49.0

目录

  • ==和equals()方法
    • = =和equals()方法的区别(面试)
    • 重写equals方法
    • 练习
  • hashcode
  • toString 方法
  • finalize()方法(不实用)

==和equals()方法

= =和equals()方法的区别(面试)

= =是一个比较运算符

  1. = =:既可以判断基本类型,又可以判断引用类型
  2. = =:如果判断基本类型,判断的是值是否相等。示例:int i=10; double d=10.0;3.
  3. = =:如果判断引用类型,判断的是地址是否相等,即判定是不是同一个对象
    equals()是Object类方法,只能判断引用类型
    在这里插入图片描述
    在这里插入图片描述

重写equals方法

在这里插入图片描述

练习

在这里插入图片描述
在这里插入图片描述

hashcode

1)提高具有哈希结构的容器的效率!
2)两个引用,如果指向的是同一个对象,则哈希值肯定是一样的!
3)两个引用,如果指向的是不同对象,则哈希值是不一样的
4)哈希值主要根据地址号来的! 不能完全将哈希值等价于地址。
5)后面在集合中 hashCode如果需要的话,也会重写

toString 方法

在这里插入图片描述

finalize()方法(不实用)

在这里插入图片描述
在这里插入图片描述

  相关解决方案