招银网络提前批(凉)面经(java方向)
第一次校招面试,发面经攒人品吧!我是菜鸡我承认,求求大家多鼓励,莫要喷我哈!(之前看有发面经的被牛油嘲讽了)
自我介绍
这一部分还是建议提前预备好,面试官让我自我介绍,然后估计是一边看我的简历,结果我磕磕盼盼讲完自己的学历背景之后就停顿下来,等着对面开始提问,结果面试官明显楞了一下说,你这就介绍完了吗?很尴尬
多线程
这一部分面试官全程追问,整个面试26分钟,估计有一大半时间都在问多线程这一部分知识,问得比较深入,建议多看面经,多看博客,把问题理解深入一点,就不会露怯。我自己确实菜鸡一枚,看的都忘了。
- 线程间进行通信的方式
- 根据我的回答有详细问,比如Lock和synchronized的区别,ReentrantLock和Condition类的使用
- 信号量,生产者-消费者模式如何实现(这部分我回答的比较差,操作系统之前看的很早,都忘了)
- 如何创建线程池,以及具体的ThreadPoolExcutor的方法参数、拒绝策略
- Automic原子类及实现机制
数据库
- 索引的实现机制
- 根据我回答的就开始问B+树、红黑树(我差点以为他想让我口述算法)、哈希表,然后会套用一些数据库实际的应用场景问我具体如何使用这些数据结构。
- InnoDB的一些特性
算法题
- 如何判断链表是否有环(以为就一道编程题,暗自窃喜,剑指原题心里笑嘻嘻)
- 逆序数(顿时MMP)
- 判断树的深度
本来都不算很难的,但是面试官一直问优化方案,很难过。为啥别人都没有算法,我有三道啊!果然还是太菜了吗
设计模式
手写单例模式
- 我说了一个双重校验的单例,然后他就问其他方法呢?
- 扯到又Volatile,详细说了一下指令重排和内存屏障
说到内存屏障的时候,自己也是好久之前看的了,表述的可能不太准确,然后就是喜闻乐见的有什么问题想问我的环节了?我就大概问了一下招银对应届生的要求,然后over!
最后感觉笔试环节还是挺重要的,以后还是要重视啊!