我上海大厂Java面试经历:java后端转前端要多久

2025-10-21 02:45:08

程序员:给多少工资,干多少事

我们不是经常会看到一个关于西游记的“悖论”吗:

为什么孙悟空初期大闹天宫的时候那么厉害?因为他自己当老板,打一群天庭的打工仔。

为什么取经路上又变得不行了?作为一个打工仔,去跟一群出来自己创业的妖怪打架。

很多程序员想跟老板说,但又不太敢说,实际却在做的一件事。

事实却是:

“拿着10K的工资,做着20K的事,还要操着30K的心!”

其实,这些情况都不奇怪,甚至是人之常情。

阿里一面

讲一下 HashMap 中 put 方法过程?

对 Key求Hash 值,然后再计算 下标。

如果没有碰撞,直接放入桶中,

如果碰撞了,以链表的方式链接到后面,

如果链表长度超过阀值(TREEIFY_THRESHOLD == 8),就把链表转成红黑树。

GC 算法,除了常见的复制算法,标记整理,标记清除算法,还有哪些?

增量算法。主要思想是垃圾收集线程与用户线程交替执行。也可以说一边执行垃圾回收一边执行用户代码。但是这种方法会造成系统吞吐量下降。

Spring 主要思想是什么,回答 IOC 和AOP,怎么自己实现 AOP ?

使用基于反射的动态代理

SpringAOP 用的哪一种代理

阿里二面

HashMap 怎样解决冲突,讲一下扩容过程,假如一个值在原数组中,现在移动了新数组,位置肯定改变了,那是什么定位到在这个值新数组中的位置,

将新节点加到链表后,

容量扩充为原来的两倍,然后对每个节点重新计算哈希值。

这个值只可能在两个地方,一个