嗨~

各位小伙伴大家好呀~

这两天一直在想一个问题

接下来该写点什么?

看看自己的调性

追热点又追不上

文笔还不好~

只能写点教程文章这个样子~


所以小伙伴们准备好

和我一起捋一遍Java基础了吗?

那咱们开始了

今天先来认识一下 Object 类

Object 类

Object类概述

类 Object 是类层次结构的根类。每个类都使用 Object 作为超类。所有对象(包括数组)都实现这个类的方法。

简单来说就是,Object类是所有类的父类,包括我们所写的类,我们在使用类的时候就会利用Object类中的方法~

Object类的hashCode()方法

public int hashCode();

返回该对象的哈希码值。默认情况下,该方法会根据对象的地址来计算。

java object类定义 java中object类型_java object类定义

不同对象的 hashCode() 的值一般是不相同。但是,同一个对象的hashCode() 值肯定相同。(就好像身份证号一样,两个人的身份账号可能相同,但是一个人的身份证号肯定是不会变的~)

java object类定义 java中object类型_java object类定义_02

Object类的getClass()方法

public final Class getClass()

返回此 Object 的运行时类。

public String getName()

可以通过 Class 类中的一个方法,获取对象的真实类的全名称。

java object类定义 java中object类型_java object类定义_03

这个方法在反射中会有很大的作用哦~

Object类的toString()方法

public String toString()

返回该对象的字符串表示。

哎~和讲好的不一样呀~

别急~我们来看一下 toString() 方法的底层代码:

getClass().getName() + "@" + Integer.toHexString(hashCode()) 这返回的是:类的全路径名称+它的哈希码值~在实际的开发中对我们来说是没有意义的~所以我们一般会重写该方法。

重写 toString 方法

Alt+Shift+s

就会弹出这个页面

java object类定义 java中object类型_基本数据类型_04

点击进入下一步

java object类定义 java中object类型_Java_05

然后点击ok既可以了~

java object类定义 java中object类型_基本数据类型_06

这下再运行代码就不一样了

(toString 是默认调用的可以省略哦~)

java object类定义 java中object类型_引用数据类型_07

Object类的equals()方法

public boolean equals();

指示其他某个对象是否与此对象"相等"

java object类定义 java中object类型_Java_08

查看底层代码:

默认方法是比较的是对象的引用是否相同。由于比较对象的引用对于我们在实际开发中没有意义,一般还是要重写该方法。

步骤同上~

java object类定义 java中object类型_java object类定义_09

java object类定义 java中object类型_基本数据类型_10

==号和equals方法的区别

"==" 是一个比较运算符号,既可以比较基本数据类型,也可以比较引用数据类型,基本数据类型比较的是值,引用数据类型比较的是地址值

equals() 方法是一个方法,只能比较引用数据类型,所有的对象都会继承 Object 类中的方法,没有重写 Object 类中的 equals 方法,equals方法和==号比较引用数据类型无区别,重写后的equals方法比较的是对象中的属性。


我是萌新娜娜

立志做一个不翻车的老司机

学习Java的路上请多多指教

大家有问题不懂的可以在下方评论