写点什么

美团四面,offer 已拿;分享个人面经以及刷题经验!

发布于: 2021 年 01 月 05 日

美团点评社招 java 一面


1、做一下自我介绍吧,简单说一下你的项目?

2、有遇到过内存泄漏吗?你们是怎么解决的?这个前阵子确实遇到过一次,还算运气比较好。

3、java 的基本类型有哪几个?String 是不是 java 的基本类型?String 为什么要是 final 类型的?

4、反射机制的底层实现是什么?动态呢?动态的实现原理?

5、hashmap 了解吗?说一下 hashmap 相关的一些东西?hashmap 是线程安全的吗?为什么是线程安全的?concureenthashmap 了解吗?他是如何实现线程安全的?你刚才说 1.8 基于 cas?cas 的 ABA 问题怎么解决?

6、说一下 JVM 的线程模型?这些区域都分别是干啥用的?java 线程模型和 jvm 线程模型注意区分、总结下,网上很多文章都是错的。

7、说一下 java 类加载器的工作机制?类加载在那个区域进行的?

8、说一下 java 的线程模型?violate 了解吗?他的原理是什么?violate 是线程安全的吗?为什么不是?

9、保证线程安全的解决方法有哪些?说一说读写锁吧,读写锁的读

10、数据库的索引有哪几种?为什么要用 B+树来做索引?组合索引和几个单个的索引有什么区别?数据库的大表查询优化了解吗?MVCC 机制了解不?MVCC 机制有什么问题?怎么去解决这个问题?mysql 慢语句调优做过吗?说说你是怎么做的?

11、redis 了解吗?你说说怎么用 redis 实现分布式锁?

12、spring 中 Bean 的作用域,springMVC 的 controller 是线程安全的吗?怎么去保证线程安全呢?

13、消息队列有用过吗?说说你怎么用的?你这么用感觉不大对吧。。大写的尴尬。。

14、计算机网络了解吗?说一说 TCP 三次握手和四次挥手吧,感觉这个真的是计算机网络必考知识点啊,每次问到计算机网络都会问这个。time_wait 状态产生的原因是什么?,有什么危害?可以如何避免?

15、leetcode153. 寻找旋转排序数组中的最小值

假设按照升序排序的数组在预先未知的某个点上进行了旋转。


( 例如,数组 [0,1,2,4,5,6,7] 可能变为 [4,5,6,7,0,1,2] )。


请找出其中最小的元素。


你可以假设数组中不存在重复元素。


示例 1:


输入: [3,4,5,1,2]

输出: 1


示例 2:


输入: [4,5,6,7,0,1,2]

输出: 0


你手里有哪些 offer 了?最快什么时候能入职呢?还有什么问题想问的?然后说会有 hr 联系你,第二天就接到了 hr 约二面时间的通知。


总结下来,面试问的东西还是挺宽的,而且问的很细,一个知识点基本都是问到答不上来为止。还是有很多东西需要加强?在美团的面试中还是学到了一些东西。


美团点评二面


1.首先还是问项目。问的比较细,比较全。

2.String,StringBuffer,StringBuilder 的区别,为什么 String 是不可变的,StringBuffer 和 StringBuilder 哪个是线程安全的,他们分别适用于什么场景。

3.java 类加载过程是怎么样的,说一下 volatile。

4.并发包了解吗?假如几个线程之间相互等待,可以用哪个并发类来实现,他的原理是什么?

5.数据库慢查询优化了解哪些?说了很多,面试官说假如这些都已经做好了还是很慢怎么办?最后不清楚问了下面试官,面试官主要想了解数据库分区的知识。

6.说一下 spring 容器的启动过程?

7.讲一下分布式锁,基于 zookeeper 实现和 redis 实现在性能上有什么差异?

8.kafka 如何保证不丢消息又不会重复消费。了解大数据相关的一些技术吗?

9.最后写了道题,leetcode55. 跳跃游戏

给定一个非负整数数组,你最初位于数组的第一个位置。


数组中的每个元素代表你在该位置可以跳跃的最大长度。


判断你是否能够到达最后一个位置。


示例 1:


输入: [2,3,1,1,4]

输出: true

解释: 我们可以先跳 1 步,从位置 0 到达 位置 1, 然后再从位置 1 跳 3 步到达最后一个位置。


示例 2:


输入: [3,2,1,0,4]

输出: false

解释: 无论怎样,你总会到达索引为 3 的位置。但该位置的最大跳跃长度是 0 , 所以你永远不可能到达最后一个位置。


最快什么时候能过来?有什么问题想问的?然后说后面有 hr 再和你联系。


美团点评三面


面试官首先问了很多简历中的一些基本信息.画一下你这个项目与哪些工程交互,它在你们的产品中处于什么样一个位置


画一下你们这个项目的架构图,挑一个你觉得比较难的业务场景来讲一下,


你们这个项目中都遇到了哪些问题呢?说说你们最后都怎么解决的


写了一段代码,问这个代码最后输出什么?申请多大的内存空间,都在什么位置申请的


public class Test {


public static void main(String[] args) {


String str = "hello";

test(str);

System.out.println(str);

}


public static void test(String str){

str = str + "world";

System.out.println(str);

int[] a = new int[1024];

}

}


hashmap 了解吗?他的 set 和 get 的时间复杂度是多少?为什么是 O(1),说下详细过程,hashmap 是线程安全的吗?

Jvm 了解吗?jvm 中哪些可以作为垃圾回收的 gcroot?为什么呢?

什么时候能过来上班?然后就说等会 hr 面。


美团点评四面,hr 面


问了下基本情况,什么时候能过来,为什么想换工作?在上家的绩效和薪水情况,期望工资是多少。


针对上面的技术我特意整理了一下,如果想学习 Java 工程化、高性能及分布式、深入浅出。性能调优、Spring,MyBatis,Netty 源码分析的朋友可以查看一下:




文章资料获取方式:需要获取得话麻烦一键三连+评论,然后添加 VX(tkzl6666)即可免费领取




用户头像

微信:tkzl6666 添加获取你想要的Java资料 2019.01.29 加入

添加VX(tkzl6666 ) 获取大厂面试真题,面试复习资料,Java进阶资料,Java实战项目。

评论 (1 条评论)

发布
用户头像
美团四面,offer 已拿;分享个人面经以及刷题经验!
2021 年 01 月 05 日 14:12
回复
没有更多了
美团四面,offer已拿;分享个人面经以及刷题经验!