一、object类介绍
object类这个老祖宗中的方法,所有子类通用,直接或间接继承。
学习常用方法即可
列表
prtected object clone() //对象克隆
int hashCode() //获取对象哈希值
boolean equals(Object obj) //判断两个对象是否相等
String toString() //转字符串
protected void finalize() //垃圾回收器负责调用的方法
二、toString()
源方法--类名@对象的内存地址,且转换为十六进制的形式
1、未重写toString(),println()内自动调用toString()
![a4afc3e4f72ec00fc766739ff67847ec.png](https://img-blog.csdnimg.cn/img_convert/a4afc3e4f72ec00fc766739ff67847ec.png)
2、重写toString()后结果,println()内自动调用toString()
![f43b21a7e5f867af8a7920932fb397a6.png](https://img-blog.csdnimg.cn/img_convert/f43b21a7e5f867af8a7920932fb397a6.png)
三、equals()
源方法,比较两个对象的内存地址
1、未重写equals
![cca633ab25ccf770daeb68d1f8b8b3ef.png](https://img-blog.csdnimg.cn/img_convert/cca633ab25ccf770daeb68d1f8b8b3ef.png)
2、重写后结果
![139c2dbf61f37c2105ce6c1fb7104bd9.png](https://img-blog.csdnimg.cn/img_convert/139c2dbf61f37c2105ce6c1fb7104bd9.png)
3、idea的快捷使用
idea可自动生成构造方法、setter和getter方法、重新toString()、重写equals()等,非常方便
![7c73260b7c4780128bd7e1e8b2ebf9a7.png](https://img-blog.csdnimg.cn/img_convert/7c73260b7c4780128bd7e1e8b2ebf9a7.png)
4、==与equals区别
"=="用于基本数据类型
equals用于引用数据类型
5、String类型已经重写equals(),可以直接用
![293e8308ad538b8526d2cb9449505232.png](https://img-blog.csdnimg.cn/img_convert/293e8308ad538b8526d2cb9449505232.png)
四、finalize()
1、方法介绍:
protected void finalize() throw Throwable{}
只有方法体,没有代码,用于java对象即将垃圾回收器回收时,jvm自动的调用。类似静态代码。
是一个时机,类似临终遗言
根据jdk版本,回收机制可能不太一样。
![4f9e98f4b85d438117fffac94255f79c.png](https://img-blog.csdnimg.cn/img_convert/4f9e98f4b85d438117fffac94255f79c.png)
五、hashCode()
在object类中的ha'shCode方法,是对象经过哈希算法处理后的值,可等同于一个java对象的内存地址
![9b73356c5511b8dc8a67181232752a1d.png](https://img-blog.csdnimg.cn/img_convert/9b73356c5511b8dc8a67181232752a1d.png)