刚面试了腾讯,给大家分享下这些硬核的面试经验
一轮技术面(90分钟)
1.hashmap和hashtable区别
2.为什么产生死锁
3.jvm类加载
4.java反射获取私有属性,改变值
5.反射用途
6.所用数据库
7.项目难点,问题
8.如何解决项目中遇到的问题
9.项目中遇到最自豪的地方
10.会什么算法
二轮技术面(120分钟)
1.讲项目
2.数据库乐观锁使用
3.状态机
4.如何解决状态机不对问题
5.如何分库分表
6.MySQL极限
7.HashMap源码
8.设计一个线程安全的HashMap
9.快排的实现,时间复杂度和空间复杂度
10.会什么算法
11.如何把项目变成SOA架构
12.Spring源码,最深刻的模块,aop用途
13.JVM内存模型
14.垃圾回收机制
15.项目中查看垃圾回收
三轮技术面(150分钟)
1.ConcurrentHashMap底层原理?
2.手写一个LRU(用LinkedHashMap)
3.HashMap底层数据结构?
4.JDK1.8中的HashMap为什么用红黑树不用普通的AVL树?
5.为什么在8的时候链表变成树?
6.为什么在6的时候从树退回链表?
7.线程池7个参数,该怎么配置最好?
8.说一下volatile
9.volatile的可见性和禁止指令重排序怎么实现的?
10.CAS是什么?PriorityQueue底层是什么,初始容量是多少,扩容方式呢?
11.若原始大小<64,则扩容为原来的2倍+2,不然就扩容为原来的1.5倍
12.HashMap的容量为什么要设置为2的次幂?
13.你知道跳表吗,什么场景会用到?
14.CopyOnWriteArrayList知道吗,迭代器支持fail-fast吗?
15.innodb的底层数据结构?
16.为什么用B+树不用B树?
17.为什么用B+树不用红黑树?
18.coding:无序数组怎么寻找第k大的数,写一个二叉树层次遍历
19.不知道大小的数据流取其中100个数,怎样的取法能最随机
20.n个物品每个物品都有一定价值,分给2个人,怎么分两个人的价值差最小
四轮技术面(120分钟)
1.项目中的权限管理 2.登录状态如何储存
3.session和cookie的区别,session如何管理
4.HashMap底层结构
5.synchronized关键字的用法
6.synchronized修饰类方法和普通方法的锁区别,获取类锁之后还能获取对象锁吗
7.类加载器的双亲委派模型的作用,能重复加载某个类吗
8.类加载器的类的缓存,key是什么
9.介绍Redis
10.如何将数据分布在不同的Redis
11.有了解过取余算法?
12.spring的apo实现
13.字节码结构
14.浏览器输入网址过程,结合springmvc
五轮技术面(120分钟)
1.HashMap在大量哈希冲突该怎么处理
2.红黑树比BST优点
3.MySQL为什么使用B+树
4.多个索引会有多份数据吗
5.数据库的隔离级别和解决的问题
6.数据库默认隔离级别,一定会产生幻读吗,怎么解决
7.输入网址到展示的整个过程,结合springmvc来讲
8.负载均衡的算法
9.哈弗曼编码,如何解决译码问题
10.实习会对工作有影响吗
11.用英文介绍一个项目
12.如何查看系统负载
13.描述一个解决问题的过程
14.如何把文件从服务器复制到本地,用什么命令
六轮技术面(90分钟)
1.讲讲你所了解的JVM垃圾收集算法
2.项目中用的哪些技术
3.项目如何设计流程流转,如果是你的话该怎么设计
4.MySQL使用的索引结构,查找效率
5.MySQL查询优化
6.MySQL慢查询开启,语句分析
7.HashMap查找效率
8.JVM内存模型
9.设计模式,策略模式的使用场景
10.如何确保单例线程安全
11.Spring的bean的默认范围
12.对Netty的了解
13.未来发展规划
14.如何让代码可读性更加复杂
七轮HR面(40分钟)
1.说一下发展方向
2.说一下经验不足导致的问题
3.说一下挑战杯的工作内容
4.说一下你给挑战杯项目的主要贡献
5.实习时间
6.拿到了哪些offer,你是怎么考虑的
7.为什么不选择腾讯
8.腾讯技术栈和阿里技术栈的区别
最后给大家分享下我收集的,BAT大厂面试资料,内容非常全面,从java基础到java高级进阶技术都有,主要内容有:IO流20篇,反射机制,注解15篇,Java基础能力、多线程、函数编辑、Java面试题,这些成为架构师必备的知识体系及面试题答案。由于篇幅有限就不一一截图了
IO流20偏篇
反射机制
注解15篇Java基础能力
多线程
函数式编程
面试题
需要这份面试题的同学麻烦帮忙点赞加收藏,扫码添加小助理即可