美团(成都)Java研发工程师一面面经

8.19 18:45 一面(65min)

有两三题没答出来。。按照今年成都的内卷程度感觉寄了

项目

  1. 实习的项目重构主要是按照什么标准?

基础

操作系统

1. 进程和线程的区别?
2. 什么是临界区?
3. 进程间通信的方法?
4. 进程有哪些调度算法?
5. 什么是死锁?死锁的条件?

计算机网络

1. HTTP属于哪一层?
2. TCP和UDP处于哪一层?
3. TCP和UDP有什么运用场景?有哪些区别?
4. TCP为什么需要三次握手和四次挥手?
5. 浏览器输入网址之后发生了什么?
6. Cookie和Session的区别?
追问:分布式Session如何实现?

Java基础

1. Java的异常体系?
2. 遇见过什么Error?
答:OOM
追问:OOM你是怎么排查的?
3. 遇到过NoSuchMethodException吗?
有见过,但是没啥印象是什么场景了。。
4. Integer类有缓存吗?为什么需要缓存?
5. 我可以自己实现一个包名和类名都一样的Integer类吗?

JVM

1. JVM的类加载机制
2. 有几种类加载器?为什么要有双亲委派模型?
3. 打破双亲委派模型的例子
4. Java的锁升级机制?
追问:锁升级机制怎么实现的?可以从对象头来说
5. Java有哪些GC算法?
6. 了解过G1收集器吗?
追问:四个步骤中哪些步骤会STW?
7. Java的内存区域

Java数据结构

1. HashMap底层实现
2. HashMap扩容时发生死循环是什么情况?
3. ConcurrentHashMap底层
追问:ConcurrentHashMap扩容机制
4. LinkedHashMap了解过吗?用于解决什么问题?
5. ArrayList和LinkedList的区别?

逻辑题

40亿个不重复、未排序的unsigned int,给一个x,有2G内存,如果判断x是否在这40亿个数之中?

算法题

LeetCode 88 合并两个有序数组

最后没有反问环节,感觉有点凉的意思

#美团22届秋招面试##面经##校招##美团##Java工程师#
全部评论
没问数据库方面的吗?
点赞 回复 分享
发布于 2021-08-19 20:25
我可以自己实现一个包名和类名都一样的Integer类吗? 这个问题要怎么回答呀?
点赞 回复 分享
发布于 2021-08-19 20:42
成都大厂部门总的来说比较边缘,招的人比较少,且主要社招为主,大佬们真的牛批🤣
点赞 回复 分享
发布于 2021-08-19 20:46
逻辑题是用位图吗。。
点赞 回复 分享
发布于 2021-08-19 20:51
祝楼主好运,也在这里打个广告,虾皮校园大使内推码:DSWj15Rz  可私聊我进群,我会分享笔经面经和之前整理的其他人的笔面经
点赞 回复 分享
发布于 2021-08-19 21:26
老哥成都啥部门
点赞 回复 分享
发布于 2021-08-20 00:12
成都招人没有北京上海多,如果失败了会有拒信,到时候可以再次投递调剂岗位,可以试一下北京 基础研发平台的数据开发,非常缺人 数据开发缺人,美团内推,使用内推码 WncroPl(注意是小写的L,不是大写的i) 进行内推,选择基础研发平台 北京,直接内推到组内。目前数据开发岗位很缺人,欢迎投递,可以直接内推到组内进行面试,建议早点投递,晚投递可能部门没有hc了
点赞 回复 分享
发布于 2021-08-20 09:39
死循环咋描述呀 要画图吗🤣
点赞 回复 分享
发布于 2021-08-20 10:03
楼主面试的是啥部门啊?
点赞 回复 分享
发布于 2021-08-20 11:34
帮顶借楼! 也可以试试途虎养车哈 https://www.nowcoder.com/discuss/709796
点赞 回复 分享
发布于 2021-08-20 14:16
除了最后一个都好基础啊
点赞 回复 分享
发布于 2021-08-20 17:25
楼主收到二面没
点赞 回复 分享
发布于 2021-08-20 18:50
G1不是三个步骤吗?
点赞 回复 分享
发布于 2021-08-24 11:52
楼主,G1的四个步骤(初始标记,并发标记,最终标记,筛选回收)中哪些步骤会STW呢,是最终标记阶段嘛
点赞 回复 分享
发布于 2021-08-24 20:09
请问是成都基础研发嘛?
点赞 回复 分享
发布于 2021-08-26 19:45

相关推荐

EEbond:给北邮✌️跪了
点赞 评论 收藏
分享
会飞的猿:我看你想进大厂,我给你总结一下学习路线吧,java语言方面常规八股要熟,那些java的集合,重点背hashmap八股吧,jvm类加载机制,运行时分区,垃圾回收算法,垃圾回收器CMS、G1这些,各种乐观锁悲观锁,线程安全,threadlocal这些。在进阶一些的比如jvm参数,内存溢出泄漏排查,jvm调优。我这里说的只是冰山一角,详细八股可以去网上找,这不用去买,都免费资源。mysql、redis可以去看小林coding,我看你简历上写了,你一定要熟,什么底层b+树、索引结构、innodb、mvcc、undo log、redo log、行级锁表级锁,这些东西高频出现,如果面试官问我这些我都能笑出来。消息队列rabbitmq也好kafka也好,学一种就行,什么分区啊副本啊确认机制啊怎么保证不重复消费、怎么保证消息不丢失这些基本的一定要会,进阶一点的比如LEO、高水位线、kafka和rocketmq底层零拷贝的区别等等。计算机网络和操作系统既然你是科班应该理解起来问题不大,去看小林coding这两块吧,深度够了。spring boot的八股好好看看吧,一般字节腾讯不这么问,其他的java大厂挺爱问的,什么循环依赖啥的去网上看看。数据结构的话科班应该问题不大,多去力扣集中突击刷题吧。项目的话其实说白了还是结合八股来,想一想你写的这些技术会给你挖什么坑。除此之外,还有场景题、rpc、设计模式、linux命令、ddd等。不会的就别往简历上写了,虽然技术栈很多的话好看些,但背起来确实累。总结一下,多去实习吧,多跳槽,直到跳到一个不错的中厂做跳板,这是一条可行的进大厂的路线。另外,只想找个小厂的工作的话,没必要全都照这些准备,太累了,重点放在框架的使用和一些基础八股吧。大致路线就这样,没啥太多难度,就是量大,你能达到什么高度取决于你对自己多狠,祝好。
点赞 评论 收藏
分享
评论
14
119
分享

创作者周榜

更多
牛客网
牛客企业服务