【软件构造】第八章复习笔记

文章探讨了Java中`==`和`equals`方法的异同,强调`==`检查引用是否相同,而`equals`检查对象内容等价。重写equals时需遵循自反、传递、对称等性质。可变类型在判断等价性时需注意哈希码变化可能导致不等价的问题,这是编程中需要注意的细节。
摘要由CSDN通过智能技术生成

短小(但不精悍)但复习笔记。怎么会有人把原来的笔记误删了呢(乐)。

第八章的重点主要就是"=="和equals的异同,以及使用的区分。==表示的是引用是否等价,equals则指的是对象是否等价。其次是对重写equals方法等价性的判断(等价三个性质——自反、传递、对称)。最后是对可变类型的等价性的判断。需要注意有时候以观察等价性为基准进行判断可能会导致程序报错(因为mutable一变就容易产生新的hashcode了,就不等价了,mutable真的是比较麻烦orz)。

efb1e1f053d8434789fff13ff0c9efb5.png

1dd2d3bc17d64dec99b9a298d83f1c22.png 

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值