阿里巴巴Java后端开发面试题
1. 絮叨(可跳过)
阿里从今年开始,春季的暑期实习招聘开始有笔试了。想进阿里的小伙伴,一定要把握住春季的这次实习机会,因为阿里很多部门都是秋招不怎么招人,都是暑期实习生转正。
下面是阿里集团中有笔试的岗位:
考试时间很灵活,一般就固定在一周中的某几天。根据自己的时间安排,到某一天笔试时间了自行去考试就可以了,没有准备好就等下一场考试时间就好了。
整个阿里集团都是共享这一次笔试机会,面试如果挂了可以联系其他部门(如果有部门还有HC),不必再进行笔试了,所以笔试成绩也是有记录的。
2. 面经
今年阿里面试基本都是采用电话面,所以只要选择一个安静的地方接听就好,挺方便的。春季实习时候忘记整理了,回忆不起来了,所以这里讲的是正式秋招的。
- 开场自我介绍
- 你最熟悉的一种排序算法,讲讲如何实现的,分析时间复杂度?
- 数据结构熟不熟,讲解HashMap如何解决hash冲突的,是线程安全的吗?
- 讲讲TCP三次握手,为什么要三次握手?
补充:我回答两次握手会出现丢包、延迟等情况,面试官说三次也会有这种情况出现,小伙伴们可以再思考思考,越是这类常见的面试题,面试官可能问的会越深透。 - TCP如何保证可靠性的?
- 进程和线程之间的区别?
- 列举下进程之间的通信方式有哪些?
- 线程有哪几种状态?
- 知道几种Java锁,什么是悲观锁和乐观锁?
- JVM中如何判断对象是否存活?我回答可达性分析算法的时候,又问了哪些可以作为root对象?
- 有几种GC算法,选择自己熟悉的一个详细讲讲
- G1收集器是采用的哪种算法?
通话时间68分钟,回头看看这些面试题会发现,面试官很想知道你熟悉哪些知识,对这些知识掌握多深。问题设置的也很全面,围绕数据结构、计算机网络、操作系统和JVM这些计算机基础知识问的。
可惜的是空空参加笔试参加晚了,再加上秋招HC并不多,所以面试的时候HC没有了,在空空请求下,给了面试机会,后来也没再联系转部门。
所以接下来的学弟学妹们,如果想进阿里,一定要把握住春季的暑期实习机会!!!