三面蚂蚁金服,分享面试经历总结(已拿offer)

一面

  1. HashMap链表长度大于8后一定会转化为红黑树吗

  2. 如场景是,HashMap初始数组长度为8,只有第一个元素中有值,且有八个都在一条链表上,其他数组其他七个位置都是空的,这时候为什么要转化为红黑树而不是存放到数组中呢?

  3. ConcurrentMashMap分段锁之间加了什么锁,读写之间是互斥的吗?

  4. 三次握手后如果一直不连接会怎样

  5. volatile的实现原理是怎么样的,它是怎么实现从内存中读取的?

  6. lock锁的使用,它如果是一个接口,它的实现类有哪些,区别是什么?

  7. InnoDB的隔离级别是什么,它能避免幻读吗?怎么避免的?

  8. 索引的底层实现是什么,简单介绍下。

二面

  1. 介绍一下spring中的AOP

  2. mybatis和hibernate的区别与优劣

  3. redis有哪些数据类型

    扫描二维码关注公众号,回复: 7040876 查看本文章
  4. 手写一个单例模式

  5. 用到的技术栈

三面

  1. 如何理解内存泄漏问题?有哪些情况会导致内存泄露?如何解决?

  2. 怎么理解强一致性、单调一致性和最终一致性?

  3. 分布式锁有哪些解决方案?

  4. 如何解决Redi缓存穿透的问题?

  5. Redis hash算法用的是什么?

  6. Redis集群方案应该怎么做?都有哪些方案?

098bd0440d8c44efa58605e099eb5ab1


非技术问题

  1. 为什么要用你,你与其他竞争者比较优势是什么

  2. 你有什么想问我的

  3. 如果公司需要你加班你有问题吗

整体的面试感受,面试官都很专业,要求基础知识很熟悉,面试之前一定要准备后再去面试。LeetCode题目也要刷。

切记面试前一定要刷题和准备,简历上的项目不熟悉的千万不要写上去,写上去的项目备好2-3个技术方案。


我把以上问题的部分相关答案整理好做成了文档,有需要的可以【转发+关注】,然后私信我【资料】即可免费领取

以下是部分资料截图展示

17653e3835ec404a99dcc989f01476de


057f385ee08b44928873be90420ffe1e


猜你喜欢

转载自blog.51cto.com/14455981/2430226