目录
Object类的概述
Object类是类层次结构的根类,每个类都使用Object作为超类。
所有对象(包括数组)都实现了Object类的方法。
Object类中常用方法介绍
1.hashCode()方法
语法:
object.hashCode() //返回对象的哈希码值
哈希值是根据哈希算法计算出来的一个值,该值与地址值有关,但不是实际的值。可理解为地址值。
作用:
hashCode()方法主要用来在集合中实现快速查找等操作,也可以用于对象的比较。
规定:
- 在同一个应用程序执行期间,对同一个对象调用hashCode(),如果equals()比较的信息不曾被改动过,必须返回相同的整数结果。同一个应用程序在不同执行期所得到的调用结果无需一致。
- 如果两个对象被equals()方法视为相等,对这两个对象调用hashCode()方法时必须获得相同的整数结果。
- 如果两个对象被equals()方法视为不相等,对这两个对象调用hashCode()方法不必产生不同的整数结果。
总结:
如果两个对象相同,那么它们的hashCode值一定要相同;如果两个对象的hashCo值相同,它们并不一定相同。
代码实例如下:
以上程序执行结果为:
上面代码中,因为String和ArrayList类都继承了Object,所以可以直接使用hashCode()方法。
如果两个对象相等,那么它们的哈希值也相等。代码示例如下:
执行结果为:
2.getClass()方法
语法:
object.getClass()
作用:
获取对象运行时对象的类。
代码实例如下:
以上代码执行结果为:
3.toString()方法
语法:
object.toString()
作用:
toString()方法是Object类中定义的一个重要方法,是对象的字符串的表现形式,返回值是String类型,用于描述当前对象的有关信息。
特点:
Object类中实现的toString()方法是返回当前对象的类型和内存地址信息,但在一些子类中进行了重写,也可以根据需要在用户自定义类型中重写toString()方法,来返回更适用的信息。
除显示调用对象的toString()方法外,在进行String与其他类型数据的连接操作时,会自动调用toString()方法。
调用toString()方法的默认返回格式为:对象的class名称 + @ + hashCode的十六进制字符串
代码实例如下:
以上代码执行结果为:
4.equals()方法
语法:
object.equals()
public boolean equals(Object obj)
作用:
检测一个对象是否等价与另外一个对象。
在Java中,数据等价的基本含义是指两个数据的值相等。在通过equals()和"=="进行比较的时候,引用类型数据比较的是引用,即内存地址,基本数据类型比较的是值。
注意:
- equals()方法只能比较引用类型,"=="可以比较引用类型和基本类型。
- 当用equals方法进行比较时,对类File、String、Date及包装类来说,是比较类型及内容而不考虑引用的是否是同一个实例。
- 用"=="进行比较时,符号两边的数据类型必须一致(能自动转换的数据类型除外),否则编译出错,而equals()方法比较的两个数据只要是引用类型即可。
代码实例如下:
以上代码执行结果为:
最后,感谢大家的浏览,有能力的留个赞吧,万分感谢。
"生活不止眼前的苟且,还有诗和远方的田野。"