前几天得悉我的某个可恶的应届小学妹一次性拿下美团Java岗4面offfer,导致我越发感觉本人真心有点菜鸡,我强大的心灵受到了一万点暴击!

学妹自述:
美团,是在boss上投的简历,之前也投过一次,简历都没通过删选,起初让同学帮忙改了一下简历,从新投另一个部门,取得了面试机会。
4月23日,中午HR打电话过去预约了下午4点半面试,说会在线写代码,让我筹备好网络环境。后果5点半还没打电话过去,被放鸽子。与hr从新沟通过后,确定周下一下午再面,可是跟hr沟通预约这一套貌似在美团并没有什么用。

艳羡归艳羡,不过这又为我码字提供了素材(哈哈哈),咱明天就大抵分享一下学妹的这美团Java4面面经,看看人家面试都问了些啥(并在文末附带“Java面试+学习资源” ☛☛☚☚)

美团Java岗一面(20分钟左右)

学妹自述:晚7点,因为想到下周一才面试,我刚筹备进来打个羽毛球,北京的电话就来了。面试官各种道歉,说散会迁延了。。

算法题:给一个数字串,要求划分为无效的ip地址,求出所有的后果

输出:s = "25525511135"输入:["255.255.11.135","255.255.111.35"]输出:s = "0000"输入:["0.0.0.0"]输出:s = "101023"输入:["1.0.10.23","1.0.102.3","10.1.0.23","10.10.2.3","101.0.2.3"]
学妹自述:一面挺匆忙的,我预计面试官刚开完会还没吃饭呢。他说让我等,可能再找一个共事面我,可能就间接通知我后果了。从一面面试官的声音和口气,我判断他肯定是个部门老大,问的设计偏多,前面hr通知我他就是我要去的部门的老大。。哈哈。。

美团Java岗二面(60分钟)

Part 01 技术问题

  • Java如何应用jdbc连贯数据库?
  • 如何实现线程平安?
  • 如何创立线程?如何创立线程池?
  • 说说都有哪些锁?
  • 理解spring boot吗
  • redis特点
  • redis都有哪些数据结构?
  • 用到了redis哪些命令?
  • redis的利用?
  • 为什么redis是单线程?
  • redis的复制与集群?
  • redis的长久化?
  • rdb的两种策略?
  • rdb和aof各有什么优缺点?

Part 02 我的项目

  • 介绍一下我的项目
  • 说说秒杀的流程
  • 如何解决超卖的?
  • 为什么要用redis?
  • 库存没卖完怎么办?
  • jmeter<typo id="typo-1062" data-origin="压测" ignoretag="true">压测</typo>如何?
  • 音讯队列的作用?
  • 如何减库存的?
  • 秒杀时忽然想减少库存怎么办?

Part 03 算法题

  • 给一非空的单词列表,返回前 k 个呈现次数最多的单词。返回的答案应该按单词呈现频率由高到低排序。如果不同的单词有雷同呈现频率,按字母程序排序。

美团Java岗三面(75min)

  • 自我介绍
  • 聊我的项目
  • 讲讲 ThreadPoolExecutor 的七个参数?怎么配置?能说一下外围线程数、最大线程数、工作队列之间的数量关系吗?
  • ThreadPoolExecutor 中提交工作后的执行步骤?
  • 如果我须要工作有返回后果的话你须要传入什么类型的工作?
  • 还用过别的设计模式来解决相似的问题吗?(我的项目中的问题,扯动静代理,又问了两种动静代理实现的区别,Spring AOP 用的是哪种)
  • Spring AOP 有呈现过代理生效的状况吗?你在哪里用到过 AOP ?
  • 讲讲 Spring 的事务管理吗?
  • (两头交叉一道算法题、SQL 题)
  • 你在开发过程中都遇到过哪些异样?你是怎么解决的?(空指针、SQL 异样、类型转换异样)
  • 各种空指针异样判断题
  • 算法题:有一个正整数 n(n < 100),冀望找出一个最小的 n 的倍数 m(m < 2^64 - 1)且 m <typo id="typo-1607" data-origin="只由" ignoretag="true">只由</typo> 1、0 组成,例如:输出 n = 2 输入 m = 10,输出 n = 3 输入 m = 111

美团Java岗 hr面(15min)

  • 哪里人?能承受异地工作吗?
  • 平时学习怎么样?有加入比赛或取得奖学金吗?
  • 介绍一下我的项目经验,你在这外面表演什么角色?
  • 高考多少分之类的问题

如何备战Java面试?

谈到怎么筹备Java面试,我想说,若你还同无头苍蝇个别不知如何下手,那么第一件事你要做的就是梳理本身的常识脉络。毕竟,想要进大厂,就须要具备更多的常识树,须要把握更全面的常识体系,所以就须要对常识进行一个零碎的梳理了。

如果感觉本人手绘Java常识脉络图比拟麻烦,能够借鉴参考下方我之前大抵手绘一份常识网图(Java常识体系宏大,我是用的xmind绘制的脉络图,文中无奈间接上传原件,截图如下,内容过多以至于图片不够清晰,但可提供分享原件, ☛☛共享☚☚