二面之后等了大约一个星期,收到了阿里的现场面试邀请,很开心地赶往了现场,开始了第三次技术面试。进入阿里办公楼,在休息区等候了一段时间,便开始了自己的第三次技术面试。三面面试官给人感觉很nice,问题如下:
1、说一下常见的多线程设计模式(之前我正好在我的博客整理过一本名叫Java多线程设计模式的书,于是便说了几个,但是说的不是很全);
2、Java虚拟机内存模型;
3、volatile关键字的作用;
4、什么情况下使用volatile是线程安全的(我感觉面试官的意思是volatile保证不保证操作的原子性);
5、如何自己设计一个生产者消费者模式(我觉得关键是阻塞队列的实现,把这个说了说);
6、BlockingQueue实现类有哪些;
7、TreeSet实现了哪些接口,如果需要对他的元素进行排序,元素需要满足什么条件。对于TreeSet的add方法放入重复元素会返回true还是false;
8、JDBC的过程(这个问题竟然没有答