指维科技java笔试题及答案.docx

指维科技java笔试题及答案

一、Java基础模块

1.简述Java中==和equals()、hashCode()的区别与联系,重写equals()为什么必须重写hashCode()?

答:==的判断逻辑分两类:对比基本数据类型时直接比较值是否相等,对比引用数据类型时比较对象的内存地址是否相等。equals()是Object类的原生方法,默认实现和==完全一致,仅对比引用地址,重写后可自定义对象内容的对比规则。hashCode()是native方法,返回对象的哈希整数值,用于哈希类集合的快速寻址。

三者的核心联系:若两个对象调用equals()返回true,则二者的hashCode()返回值

文档评论(0)

1亿VIP精品文档

相关文档