10.25跑到重庆线下面试的,在石桥铺重庆软件园那边,hc没几个,线下面试的人倒是多的一匹,还没算线上的。
面试官看到我是四川宜宾的,说他是乐山的,然后我们交流了一波乐山美食哈哈哈哈,面试官人很好,但是后面直接被拷打,问了特别多,涵盖了每个板块,按板块顺序来问,直接三个字,人麻了,哎。
一面(60+min)
1.自我介绍
2.说我是非科班的,平时是怎么学习的
3.与运算、或运算、异或运算、非运算
4.面向对象三大特性
5.重载与重写的区别,接口与抽象类的区别
6.String、StringBuidler、StringBuffer的区别
7.Java异常机制介绍一下
8.BIO、NIO、AIO的区别
9.IO用了哪些设计模式(g,记不得了)
10.Java内存模型介绍一下(g,这个问题之前背了好几遍,但是太紧张了,只说了happens-before那一套规则)
11.垃圾回收算法
12.类加载机制(g,没答好)
13.双亲委派模型介绍一下
14.JVM中一次完整的GC过程是怎样的
15.介绍一下空间分配担保原则(g,忘了)
16.常见的集合框架有哪些,分别说说他们的实现类的底层数据结构是什么
17.ArrayList和LinkedList的区别
18.HashMap和HashTable的区别
19.HashMap的底层说一下(自己说了包括数据结构、put流程、扩容机制等)
20.HashMap的数组长度为什么是2的幂次方
20.红黑树介绍一下?他的特点是什么(g,没答好)
21.了解ConcurrentHashMap吗?他的底层原理是什么?
22.线程和进程的区别
23.了解守护线程吗?
24.创建线程的几种方式和他们的优劣对比
25.线程池的几个参数及其工作原理
26.sychronized实现的底层原理(我说的是字节码文件里面的moniterenter和moniterexit不知道对不对。。。)
27.sychronized是公平锁吗?是可重入锁吗?sychronized的锁升级过程原理了解吗(g,锁升级原理以前看过,但是忘了)
28.Reentrantlock的底层原理(我说了AQS)
29.事务四大特性、数据库隔离级别、脏读幻读不可重复读是什么
30.MySQL事务的实现原理是什么?(我按着redo log 和undo log简单说了下,感觉也没答好,g)
31.MySQL的各种锁介绍一下(说了行锁、表锁、共享锁、排它锁、乐观锁、悲观锁)
32.死锁是怎么产生的,怎么解决
33.MySQL索引的底层数据结构
34.为什么索引的底层不用B树或者二叉树、红黑树?
35.SQL慢查询是怎么回事,怎么去排除问题(我说了4点,1是没有命中索引或者没有索引,去查慢查询日志,用explain来看SQL的问题,再进行索引优化;2是单表数据量太大,做分库分表;3是网络性能问题或者机器负载过高,做主从复制;4是热点数据在单表分布负载不均衡,用缓存来存取热点数据)
36.MyBatis介绍一下?分页的原理是什么?平时用过哪些标签?Dao接口工作的原理是怎样的?MyBatis编程步骤是怎样的,是怎么解决jdbc不足的?动态sql相关的问题?(大g特g,没回答好)
36.Spring Bean的生命周期(g,背了无数遍的生命周期居然太紧张忘了两个步骤了,然后面试官问我是不是背的面试题 )
37.Spring 源码问了几个问题(g,回答不上)
38.Spring MVC工作流程
39.SpringBoot自动装配原理
40.yml文件如何去配置集合,如何去配置读取属性(配置集合那个没明白啥意思,g)
41.Gateway网关的实现原理(回答完之后又问过滤器链怎么只实现一个过滤器,我说用@order注解,他说那是执行顺序,我又说我只实现了一个GlobleFilter,不清楚,g)
42.网关负载均衡算法(g,只记得两个了)
43.Nacos心跳机制的底层原理(大g特g)
44.Nacos配置中心的实现原理(g,平时都是只是使用过Nacos,没想到问这么深,大g特g)
45.Nacos是CP还是AP?(我记得都是吧,但是好像面试官说是错的,g)
46.分布式事务两阶段提交、三阶段提交介绍一下?有什么问题吗?详细介绍一下Seata的AT模式(AT模式回答的磕磕绊绊的,g)
47.Redis是单线程还是多线程的?介绍下单线程模型呢,select、poll、epoll的底层原理?(select、poll、epoll底层没回答好,忘了,g)
48.Redis分布式锁、了解红锁吗
49.算法:合并两个有序链表
50.反问
紧接着二面 hr面(10+min)
1.自我介绍
2.深挖实验室项目和实习
3.问了期望薪资和base地(然后说我是不是在下面和其他同学讨论了的,我说没有)
4.职业规划
5.反问
然后让我可以回去了,我说不是还有三面吗?让我回去等通知,我已经听出来寄了
出来以后人麻了,半天没缓过来,问了很多项目里面的代码细节,比如怎么配置的,用的什么注解,怎么用的,说实话项目我没抠过那么细,哎,还是自己太菜了。
过了几天果然收到感谢信gg
#锐明##锐明技术##锐明技术校招##面经#