2021 年阿里 Java 面试题及答案,Java 高级进阶学习资料
蚂蚁金服(五面)
![](https://static001.geekbang.org/infoq/43/43734e870ffe921c14aa0b2afacc8ac8.png)
蚂蚁金服:一面
一面就做了一道算法题,要求两小时内完成,给了长度为 N 的有重复元素的数组,要求输出第 10 大的数。典型的 TopK 问题,快排算法搞定。
算法题要注意的是合法性校验、边界条件以及异常的处理。另外,如果要写测试用例,一定要保证测试覆盖场景尽可能全。加上平时刷刷算法题,这种考核应该没问题的。
蚂蚁金服:二面
自我介绍下呗
开源项目贡献过代码么?
目前该部门做什么,业务简单介绍下,内部有哪些系统,作用和交互过程说下
Dubbo 踩过哪些坑,分别是怎么解决的?
开始进入正题,说下你对线程安全的理解
事务有哪些特性?
怎么理解原子性?
乐观锁和悲观锁的区别?
这两种锁在 Java 和 MySQL 分别是怎么实现的?
HashMap 为什么不是线程安全的?
怎么让 HashMap 变得线程安全?
Collections 的 synchronize 两者的区别是什么?
jdk1.8 对 ConcurrentHashMap 做了哪些优化?
redis 主从机制了解么?怎么实现的?
有过 GC 调优的经历么?
有什么想问的么?
蚂蚁金服:三面
简单自我介绍下
监控系统怎么做的,分为哪些模块,模块之间怎么交互的?用的什么数据库?
使用什么存储引擎,为什么使用 InnnoDB?
订单表有做拆分么,怎么拆的?
水平拆分后查询过程描述下
如果落到某个分片的数据很大怎么办?
哈希取模会有什么问题么?
分库分表后怎么解决读写压力?
拆分后主键怎么保证惟一?
Snowflake 生成的 ID 是全局递增唯一么?
怎么实现全局递增的唯一 ID?
Mysql 的索引结构说下
主键索引和普通索引的区别?
你们系统目前的瓶颈在哪里?
你打算怎么优化?简要说下你的优化思路
有什么想问我么?
蚂蚁金服:四面
介绍下自己
为什么要做逆向?
怎么理解微服务?
服务治理怎么实现的?
这个不是中间件做的事么,为什么你们部门做?
说说 Spring 的生命周期吧
说说 GC 的过程
CMS GC 有什么问题?
怎么避免产生浮动垃圾?
强制 young gc 会有什么问题?
知道 G1 么?
回收过程是怎么样的?
你提到的 Remember Set 底层是怎么实现的?
有什么想问的么?
蚂蚁金服:五面
五面是 HRBP 面的,和我提前预约了时间,主要聊了之前在蚂蚁的实习经历、部门在做的事情、职业发展、福利待遇等。阿里面试官确实是具有一票否决权的,很看重你的价值观是否 match,一般都比较喜欢皮实的候选人。HR 面一定要诚实,不要说谎,只要你说谎 HR 都会去证实,直接 cut 了。
之前蚂蚁实习三个月怎么不留下来?
实习的时候主管是谁?
实习做了哪些事情?
你对技术怎么看?平时使用什么技术栈?
最近有在研究什么东西么
你对 SRE 怎么看
对待遇有什么预期么
最后 HR 还对我说目前稳定性保障部挺缺人的,希望我尽快回复。
蚂蚁金服面试小结
蚂蚁面试比较重视基础,所以 Java 那些基本功一定要扎实。蚂蚁的工作环境还是挺赞的,因为我面的是稳定性保障部门,还有许多单独的小组,什么三年 1 班,很有青春的感觉。面试官基本水平都比较高,基本都 P7 以上,除了基础还问了不少架构设计方面的问题,收获还是挺大的。
最后
看完美团、字节、腾讯这三家的面试问题,是不是感觉问的特别多,可能咱们又得开启面试造火箭、工作拧螺丝的模式去准备下一次的面试了。
开源分享:【一线大厂Java面试题解析+核心总结学习笔记+最新讲解视频+实战项目源码】
开篇有提及我可是足足背下了 1000 道题目,多少还是有点用的呢,我看了下,上面这些问题大部分都能从我背的题里找到的,所以今天给大家分享一下互联网工程师必备的面试 1000 题。
注意不论是我说的互联网面试 1000 题,还是后面提及的算法与数据结构、设计模式以及更多的 Java 学习笔记等,皆可分享给各位朋友
![](https://static001.geekbang.org/infoq/dd/ddabaa28a9b9490803e235a6b7766268.png)
互联网工程师必备的面试 1000 题
而且从上面三家来看,算法与数据结构是必备不可少的呀,因此我建议大家可以去刷刷这本左程云大佬著作的《程序员代码面试指南 IT 名企算法与数据结构题目最优解》,里面近 200 道真实出现过的经典代码面试题。
![](https://static001.geekbang.org/infoq/12/12524f932d7f07040a6b272cc8a12af8.png)
评论