一面

  1. 详细的介绍JVM的内存模型结构
  2. JVM最常用的参数配置讲讲
  3. GC垃圾收集算法、GC垃圾收集器有哪些,以及新生代老生代 分别用什么算法
  4. 多线程的几种加锁方式详细介绍
  5. 实现线程安全的方式?ThreadLocal原理?线程池了解吗说说看?自己用线程池怎么定参数?
  6. HashMap底层实现,哈希冲突怎么解决的
  7. ConcurrentHashMap 在Java7和Java8中的区别?为什么Java8并发效率更好?什么情况下用HashMap,什么情况用ConcurrentHashMap?
  8. MySQL采用了什么存储引擎,为什么?
  9. 各种排序算法讲一下

二面

  1. 索引的类型,索引的底层实现原理
  2. MySQL数据库对应的行锁、表锁、悲观锁、乐观锁的区别
  3. MySQL数据库引擎?应用场景?查询优化?NoSQL有用或了解吗?
  4. mysql事务讲一下,事务定义,四个性质,事务并发引起的问题,事务的四个隔离级别
  5. Spring IoC、AOP,底层代码看过吗,scope作用域为什么要有prototype
  6. 谈谈你知道的设计模式,知道什么是回调模式吗
  7. 高并发系统,海量数据分库分表的策略,怎么来实现
  8. 数据库前面的Redis缓存,如何实现查询的负载均衡
  9. 为什么选择阿里巴巴?你对待工作的做事原则有哪些?

三面:

  1. 选一个项目具体讲讲背景、你的职责、遇到的困难以及如何解决(然后各种问细节)
  2. Redis你了解多少?5种对象,8种数据结构,RDB和AOF持久化区别
  3. Redis和数据库如何保证数据一致性
  4. 谈谈你对分布式的理解,分布式场景会面临哪些技术调整和挑战?
  5. 介绍Nginx负载均衡策略?
  6. 谈谈异步和同步的使用场景,以及消息队列。

四面(交叉面):

1. 你参与的项目,画出对应的架构设计图。

2. 如果让你设计秒杀,你的设计思路。

3. 谈谈MySQL的查询优化方法,重点谈谈优化步骤。

4. 用过什么代码质量检测工具?谈谈你对代码注释的规范

5. 用过什么JVM调优命令?

6. 如何实现线程安全?java的线程安全类?讲讲线程池

7. 讲讲生产者消费者模式

8. 谈谈你对SOA以及微服务的理解,之间的区别。

HR面:

1. 前面的面试有什么收获吗?

2. 你回顾自己的项目,有哪一点是最遗憾的最想改进的?具体讲讲

3. 你有什么技术方面崇拜的人吗?

4. 为什么要选择阿里,你对阿里的印象是什么样?

5. 你平时是怎么积累技术的?

6. 你在技术方面的未来规划

以上就是阿里5轮面试题,总之bat面试问的范围比较广,技术的深度和广度都会考,面试前建议准备充分。最后总结了部分阿里等Java必考题目用于参考~


阿里高级java必考题与答案

 

答案获取方式

关注+转发后,添加小助手微信:Mxy98811即可免费获取