- 主页/
- 5 年 Java 开发,面试 4 大厂(阿里、拼多多、字节、美团)后,我总结出大厂高频面试真题及解析
毕业转行做开发5年以来, 学到了很多, 加上自己的兴趣爱好, 个人认为已经成为了一个合格的程序员.
与刚开始找工作面试相同的是都会问一些相同的问题, 不同的是现在面试官会更注重为什么, 也就是说注重深度而非广度. 3年, 5年, 10年分别是个人从事技术方面职业规划中的一个坎, 3年大部分时间应对了业务逻辑, 培养良好的规范和思想, 基础知识还是欠缺.
找工作时, 除了薪资符合个人职业规划也是相当重要的.废话少说, 以下是我前两天面试总结的面试题.
1.集合
2.hashmap结构及原理
3.扩容因子, 如何扩容, 数据结构图….
4.ArrayList, LinkedList 原理及区别(画出数据结构)
5.集合四要素: 是否可重复, 是否允许空值, 是否有序, 是否线程安全…
6.线程安全集合,map 为什么是线程安全的, 哪些操作关系到线程安全
7.算法
8.说几个常见的排序算法, 实现原理, 对应的时间空间复杂度, 稳定性
9.手撕一个算法(书写): 可以选择冒泡
10.递归算法
11.面向对象
12.多态的表现
13.面向对象特征
14.static的用法
15.String StringBuilder区别, 什么情况下用’+’. 最好答出javap编译后’+’实现原理
16.多线程
17.线程的实现方式
18.线程的状态
19.常见线程池及使用
20.一个线程结束开始另外一个线程的实现方式
21。线程原理(ThreadLocal)
22.start与run的区别
23.悲观锁乐观锁
24.IO流
25.写一个读写文件
26.事务相关
27.事务机制
28.AB分别是一个事务, C里面有A, B, 如果C里A或B失败回滚C是什么状态
29.什么是事务及使用场景
30.框架相关
31.Spring , MVC, MyBatis
32.介绍下Spring以及其常用的注解, Spring IOC实现原理, AOP实现原理及使用场景, 依赖注入原理
33.Spring事务传播与隔离级别
34.MyBatis映射原理
35.分布式相关架构
36.系统架构介绍, 架构设计图以及什么场景使用了什么架构
37.Dubbo机制, Zookeeper机制以及他们的关系
38.Redis数据类型以及使用场景, 刷新时间间隔
39.Kafka介绍及使用场景承担的角色
40.讲述一下Storm
41.数据库
42.MySQl
43.mysql数据库存储类型及其优缺点
44.分布式分片分库设计, 主从结构
45.sql优化
46.索引创建原则(手写一个SQL)
47.SQL集中DDL, DMl==
48.建表的规则或者注意事项
49.数据库隔离级别及原因
50.设计模式
51.介绍下常见的设计模式以及使用场景
52.写一个单例模式实现
53.HTTP相关介绍,
54.GET, POST的区别
55.JVM相关
56.Java垃圾回收机制
57.Java内存结构(与回收机制有关)
由于篇幅限制,没能把答案展示出来。不过我已经把面试题及答案整理成了面试专题文档
需要获取得话麻烦一键三连+评论,然后关注公众号【taskctl】回复内容“资料”