0、自我介绍
1、说一个跟后端有关的项目
2、(由项目引出)什么是里式替换原则?在实践的时候是怎么做的?
3、(继续引出)什么是单例模式?
4、手写单例模式,这里的new Singleton真的不会多次实例化吗?并发情况下呢?(这里指令重排没有说清楚)
5、(由并发引出)多个线程访问一个变量会有什么问题?
6、怎么解决这些问题?
7、volatile能完全解决吗?该怎么完全解决?
8、当一个变量用synchronized标识之后,会经过哪些步骤?
9、JVM的内存模型
10、GC主要是处理哪些部分?
11、那GC是如何处理的?有哪些策略?简单点说一下
12、标记-清除算法在清除的过程中会停顿吗?
13、网页上输入一个网址,进行HTTP连接,到后端处理,这其中的数据流是什么样的?
14、TCP如何保证传输的可靠性?
15、用过MySQL吗?MySQL的事务做到了什么?
16、隔离级别有哪些?
17、可重复读的隔离级别下能否避免幻读?用什么方式可以避免幻读?
18、算法题:一个包含2n+1个数的正数有序实数数列,有一个实数出现一次,其他实数都出现两次,找出那个出现一次的数。(剑指 Offer II 070. 排序数组中只出现一次的数字,最优解法没撸出来……)
自己写的题解:剑指 Offer II 070(力扣540):排序数组中只出现一次的数字(Java二分查找)
19、反问
总结:一面的面试官看上去很有经验,说话很温柔,也很有耐心,会明确地告诉我某一个点他想听详细说明还是简单概括;算法也会耐心地听我说复杂度的优化。
#如何看待2023届秋招##0offer是寒冬太冷还是我太菜##华为2023秋招求职进度交流##假如华子给你打电话了,你去不去##你觉得今年秋招难吗#