前言

昨晚半夜,一个学Java的老弟突然打电话告诉我他拿到了腾讯T3的offer,说实话,我有点诧异。。。

这老弟也是渣硕一枚,之前因为疫情找了一份离家近的普通工作,实习月薪5K,后来基本控制住了,就想跳槽去投岗了腾讯的Java后台开发岗位。等了一个星期后简历被放回池子里了,眼看着提前批马上就要截止了,都以为他春招首站就和腾讯无缘了,正想着该怎样安慰他受伤的小心灵,谁料腾讯那边居然就直接打电话过来通知小老弟去面试。

万万没想到,一路下来,半月过去,他居然披荆斩棘“混进”了腾讯T3,着实牛掰。出于好奇,我特意去找了这位小老弟,想知道他的一些面试技巧和秘籍,然后跟我大概的说了下面试过程,并且他的法宝很简单——刷题。而且,在准备面试之前,起码是刷了数套的Java面试PDF,哥们关系比较铁,也将这些刷题PDF全部传授于我的。

想着既然这么有用,我也想拿出来献宝一下,所以老铁们注意啦!

腾讯面试问题(整理了一下小老弟的回忆)

自我介绍+项目

什么是重载、重写、各种情况下的重载重写,final关键字,linkedList、ArrayList、HashMap源码、创建线程四种方式等一系列Java基础问题

什么是反射,反射作用是什么?讲这里的时候我顺便拓展到了EventBus框架的反射机制

双检锁单例模式为什么那样设计?二次判空的原因,volatile关键字两个关键作用及其实现原理(底层加lock,读写语义,指令重排)

线程同步的方法,synchronized关键字底层是怎么实现的,对象锁、类锁、锁监视器

ReentrantLock与synchronized的区别,公平性非公平性是如何体现的,顺便讲了AQS和CAS

你用过哪些设计模式?解决了什么问题?提到单例模式,构造者模式,观察者模式,讲了其在各个框架里面的应用

TCP 三次握手、4次挥手

redis 和 memcached 什么区别?为什么高并发下有时单线程的 redis 比多线程的memcached 效率要高?

在选择缓存时,什么时候选择 redis,什么时候选择 memcached

跟Synchronized相比 ,可重入锁ReentrantLock其实现原理有什么不同 ?

除 了 ReetrantLock, 你 还 接 触 过 JUC 中 的 哪 些 并 发 工 具 ?

mysql都有什么锁,死锁判定原理和具体场景,死锁怎么解决?

sql查询语句确定创建哪种类型的索引?如何优化查询?

HashMap 是线程安全的吗,为什么不是线程安全的(最好画图说明多线程环境下不安全)?

如何判断一个对象是否存活?(或者 GC 对象的判定方法)

mysql 索引 B+ 树

判断索引是否加上(explain)

假设数据库需要保存一年的数据,每天一百万条数据,一张表最多存一千万条数据,该咋设计表?

进程安全(没反应过来问进程安全,说了临界区,信号量)

具体实现并发安全(java sychronized,lock,cas,redis)

讲一下哈希表的底层细节,让你设计一个线程安全的哈希表,会怎么设计

编程题 二维数组判断岛屿连接(小老弟用bfs+memo说大体对了,写的冗余了)

手撕代码,数组内两个子区间交换

linux内核是否支持多进程或多线程accept()同一个listenfd。。。

脑容量有限,小老弟回忆的不多,我也只记住这些了...

 说明:本文限于篇幅,故而只展示部分的面试内容,完整的 Java面试学习文档小编已经帮你整理好了,有需要的朋友点赞+关注我后,点击此处领取Java、大厂面试学习资料哦


数套Java刷题PDF

java后端面试题解析

2.JVM面试解析

3.23种设计模式知识要点

4.MySQL20高频面试解析

5.ZK面试解析

6.Redis面试专题上下篇

7.并发编程面试解析上下篇

8.Spring面试专题

9.SpringBoot面试专题

10.SpringMVC面试专题

11.SpringCloud面试专题

12.Tomcat面试专题

13.Nginx面试专题

14.Kafka面试专题

15.MyBatis面试专题





需要资料的小伙伴点赞+关注支持小编后,【戳这里】即可免费获取资料啦!!