Java资源分享网 - 专业的Java学习网站 学Java,上Java资源分享网
2024 BAT互联网Java面试题汇总 PDF 下载
发布于:2024-03-30 15:17:34
(假如点击没反应,多刷新两次就OK!)

2024 BAT互联网Java面试题汇总 PDF 下载  图1

 

 

 

资料内容:

 

常用的集合类和并发编程相关的往往是常考点。
```
101.hashCode 的作用?hashCode 相等的两个对象一定相等吗?equals 呢?反过来相等吗?
hashCode 主要用于查找的快捷性,用在散列存储结构中确定对象的存放位置。如 HashSet
中要保证每个对象是唯一的,在 add(obj)时不需要与集合中所有对象都比较一遍,而是先通
obj hashCode 快速定位位于 hash 表的哪个桶中,再通过 equals()只需要比较该链上已
有对象即可,大大减少了比较次数(hashCode 不同的对象一定不同)。②都不一定,hashCode()
equals()都是可以随便重写的。但 JDK 规定,equals 相等 hashCode 必须相等,反之就不一
定。hashCode 默认是对象在内存的存储地址转换成一个整数来实现的,equals 默认实现是
==比较。
102.说说你了解的同步类容器和并发类容器?java.util.Collection java.util.Collections 的区
别?
① 同 步 类 容 器 : Vector HashTable Collections.synchronizedXXX 。 并 发 类 容 器 :
ConcurrentHashMapConcurrentSkipListHashMapCopyOnWriteArrayList(使用了一种叫写时
复制的方法,当有新元素添加到 CopyOnWriteArrayList 时,先从原有的数组中拷贝一份出来,
然后在新的数组做写操作,写完之后,再将原来的数组引用指向到新数组,适合读多写少的
场景)。④Collections 是工具类,提供了很多有关集合操作的静态方法;Collection 是集合接
口,提供了集合对象基本操作的通用接口。