百度-Java研发-提前批一面面经
一、项目:
1. 自我介绍。
2. 从项目中选一个介绍其中遇到的难点,并如何解决的。
3. 什么是缓存穿透?如何解决?
4. 什么是缓存击穿?如何解决?
5. 缓存击穿和缓存穿透的区别?
二、JVM
6. JVM的结构
7. GC如何判断一个对象是否是垃圾?使用的什么算法?
8. 垃圾回收算法有哪些?
9. 新生代和老年代分别使用哪些垃圾回收算法?
10. 了解CMS垃圾回收器吗?有什么特点?
11. 了解G1垃圾回收器吗?有什么特点?
12. 类加载器有哪些?
13. 什么是双亲委派?
三、JUC
14. 什么是AQS?有什么作用?
15. CountDownLatch 和 CyclicBarrier 的不同点?(未答出来)
16. 这里还问了一个关于AQS比较底层的,建议把AQS底层看熟。(包括state、条件队列和等待队列等)(答得很差)
17. Synchronized和ReentrantLock的区别?(答得很差)
四、Spring
1. SpringBoot的核心注解是哪一个?
2. SpringBoot的核心注解是由哪些注解组合的?(未答出来)
3. SpringBoot的核心注解有哪些作用?(答得很差)
4. SpringBoot工程打包的jar包和普通工程打包的jar包有什么不同?(未答出来)
5. Spring Bean的生命周期。
6. Spring Bean的生命周期中为啥需要不同阶段扩展的方法?(这道题好像问不同扩展方法有什么作用)(未答出来)
五、数据结构
1. 二叉树的遍历方式有几种?
2. 什么是二叉搜索树?什么是平衡二叉树?
3. 什么是红黑树,有什么特点?(未答出来)
4. 栈和队列的特点。
六、手撕
1. K个一组反转链表。
2. 两个队列构建一个栈。
七、场景题
1. 有两个文件,每个文件中都有50亿条url,且机器的内存很小,请问如何找出两个文件中相同的url。(未答出来)
八、开放题和聊天
1. 你对未来的规划是什么?
2. 你了解、感兴趣大数据吗?
3. 其他(主要是聊天)。
九、反问
略。
十、总结:
1. 薄弱点:G1垃圾回收器、AQS及其应用、Spring、搜索数据结构、场景。
2. 接下来任务:复习JUC并深入AQS、复习Spring并深入启动流程、深入了解搜索数据结构和积累场景题
十一、感受
1. 面试官人很好(主要不像有些面试官会越问越难)。
2. 允许使用IDEA调试代码,比较舒服。
3. 总体时间为1小时40分钟,主要是手撕比较简单,所以整体感觉挺好。
听说二面会比较难,这次没问MySQL和Redis,二面可能会问到。有没有大佬回答一下上面我没回答出来的,谢谢了
1. 自我介绍。
2. 从项目中选一个介绍其中遇到的难点,并如何解决的。
3. 什么是缓存穿透?如何解决?
4. 什么是缓存击穿?如何解决?
5. 缓存击穿和缓存穿透的区别?
二、JVM
6. JVM的结构
7. GC如何判断一个对象是否是垃圾?使用的什么算法?
8. 垃圾回收算法有哪些?
9. 新生代和老年代分别使用哪些垃圾回收算法?
10. 了解CMS垃圾回收器吗?有什么特点?
11. 了解G1垃圾回收器吗?有什么特点?
12. 类加载器有哪些?
13. 什么是双亲委派?
三、JUC
14. 什么是AQS?有什么作用?
15. CountDownLatch 和 CyclicBarrier 的不同点?(未答出来)
16. 这里还问了一个关于AQS比较底层的,建议把AQS底层看熟。(包括state、条件队列和等待队列等)(答得很差)
17. Synchronized和ReentrantLock的区别?(答得很差)
四、Spring
1. SpringBoot的核心注解是哪一个?
2. SpringBoot的核心注解是由哪些注解组合的?(未答出来)
3. SpringBoot的核心注解有哪些作用?(答得很差)
4. SpringBoot工程打包的jar包和普通工程打包的jar包有什么不同?(未答出来)
5. Spring Bean的生命周期。
6. Spring Bean的生命周期中为啥需要不同阶段扩展的方法?(这道题好像问不同扩展方法有什么作用)(未答出来)
五、数据结构
1. 二叉树的遍历方式有几种?
2. 什么是二叉搜索树?什么是平衡二叉树?
3. 什么是红黑树,有什么特点?(未答出来)
4. 栈和队列的特点。
六、手撕
1. K个一组反转链表。
2. 两个队列构建一个栈。
七、场景题
1. 有两个文件,每个文件中都有50亿条url,且机器的内存很小,请问如何找出两个文件中相同的url。(未答出来)
八、开放题和聊天
1. 你对未来的规划是什么?
2. 你了解、感兴趣大数据吗?
3. 其他(主要是聊天)。
九、反问
略。
十、总结:
1. 薄弱点:G1垃圾回收器、AQS及其应用、Spring、搜索数据结构、场景。
2. 接下来任务:复习JUC并深入AQS、复习Spring并深入启动流程、深入了解搜索数据结构和积累场景题
十一、感受
1. 面试官人很好(主要不像有些面试官会越问越难)。
2. 允许使用IDEA调试代码,比较舒服。
3. 总体时间为1小时40分钟,主要是手撕比较简单,所以整体感觉挺好。
听说二面会比较难,这次没问MySQL和Redis,二面可能会问到。有没有大佬回答一下上面我没回答出来的,谢谢了
全部评论
这么多内容的吗
约二面了?
我嘞个豆,一个小时问这么多啊
其实还有几个,发帖的时候忘记了:
1. 为啥使用Redis中的Stream作为消息队列?不使用其他的
2. Redis的数据类型有哪些?
3. 哪种Redis数据类型可实现延迟队列?
4. 哪些对象可作为GCRoots
相关推荐
查看45道真题和解析
点赞 评论 收藏
分享