上周收到腾讯打来电话约面试,听着对面小姐姐的声音,那叫一个激动呀,终于有人找我去面试了,还是腾讯(爽歪歪呀~)。结果周一去面试,上来就多线程、集合、JVM、Spring、算法、计网全部问了个遍,问我心里阴影有多大,简直无法形容。好吧,分享一波这次腾讯一面的面经吧,我怕是扛不住了吧。。。

Java大军开始

  • 多线程(连问6个)
  1. 介绍一下synchronized 的 原理以及锁优化

  2. 死锁的条件 避免死锁的方法

  3. threadlocal 的原理

  4. 进程和线程的区别

  5. 进程和线程通信方式

  6. 为什么进程间通信比线程难?

  • 集合(4个)
  1. hashmap 的结构,全介绍一遍

  2. hashmap线程安全吗,有什么其他线程安全的map

  3. 树结构还有哪些(二叉树。。b树。。b+树)

  4. 介绍一下b+树

  • JVM(4个)
  1. 垃圾回收算法,介绍一下垃圾-清理算法

  2. 如何标记的,两种标记算法

  3. root节点如何选取的呢

  4. 堆和栈的区别

  • Spring(spring的问的比较少,我只记得1个了...)
  1. 就问了AOP的实现方法(主要问了代理方法,答的不理想....)
  • 算法(感觉每次面试都是算法必问,逃不过呀)
  1. 快排的思路,怎么避免最坏情况(随机数),那如果随机数每次都是最坏的呢,我说就选择插入排序呀,他说一定要用快排(选多个随机数,然后取中位数)

  2. 堆排序的思路

  3. dp的思路,dp的条件

最后还问了一些计网的问题

  • 计网
  1. osi五层协议,分别描述一下,每层协议

  2. tcp和udp的区别,以及tcp滑动窗口

  3. 有哪些状态码,都介绍一下,漏了500,面试官还提醒了一下

  4. 字节序和大端小端(没听过,只能放弃。。。QAQ)

吐槽一下

因为疫情,足足在家憋了2个月多月,3月份才敢出门放风,然后就开始疯狂投简历面试(想跳个槽涨个薪呀)。其实在此之前,我也四处搜刮各种面试+复习笔记(那种附带有具体解析面试和总结的特别到位的笔记),虽然我这次一面腾讯凉凉的可能性比较大,不过搜刮了这么多“民脂民膏”还是想拿出来给像我一样在为跳槽涨薪四处奔波的朋友看看(原件在此),趁着银四还有一个月,加把劲儿呀兄弟们!!

  • 第一份搜刮到的面试+复习笔记:Java核心知识整理

这本283页的PDF,包括了近30个分类的知识点,关于计算机网络这一块推荐大家可以看看这个。而且多线程、集合、JVM、Spring、算法等都有,可谓是一举多得

  • 第二份搜刮到的面试+复习笔记:关于集合框架的面试题集锦(附解析)

  • 第三份搜刮到的面试+复习笔记:多线程的面试集锦

  • 最后一份:JVM/Spring/算法:学习笔记+书籍+面试