新大陆Java面试题及详细答案.docx

新大陆Java面试题及详细答案

一、基础核心题(必问,侧重实操落地)

1.说说==和equals的区别,以及equals和hashCode的关系

答案:首先明确两个核心区别,不绕理论,只说实际用的时候的区别:

1.==:如果是基本数据类型(int、char等),比较的是具体数值;如果是引用数据类型(对象),比较的是对象在堆内存中的地址,也就是判断两个对象是不是同一个实例。比如newString(a)==newString(a),结果是false,因为两个对象地址不同。

2.equals:默认是Object类的方法,底层其实也是==(比较地址),但很多类(比如String、Int

文档评论(0)

1亿VIP精品文档

相关文档