现在已经4月中旬了,虽然金三银四旺季已经快过了,但许多大厂仍然处于一个比较缺人的状态,如蚂蚁金服、京东等。
前段时间,经朋友介绍有幸面试了阿里,面试前是比较自信的一个状态,毕竟之前的技术是没什么问题的,在同年限里算是大神级别。但也不知道今年阿里面试是个什么情况,三面下来被惨虐得很难堪,直接挂掉了。

阿里一面:
根据惯例 自我介绍和项目介绍
简述hash冲突是如何发生的,常见的处理方式有哪些,在java中发生hash冲突后如何取到冲突的多个value?
讲讲Java GC机制?
红黑树需要比较大小才能进行插入,是依据什么进行比较的?其他Hash冲突解决方式?
JVM内存模型jmm 知道的全讲讲
说说Java线程池的原理?线程池有哪些?线程池工厂有哪些线程池类型,及其线程池参数是什么?
BIO、NIO、AIO的区别和联系?
hash和B+树的区别?分别应用于什么场景?哪个比较好?
索引是什么概念有什么作用?
Java web过滤器的生命周期?
讲讲TCP协议的三次握手和四次挥手过程?
mysql数据库默认存储引擎,有什么优点
MySQL的事务隔离级别,分别解决什么问题。
说说事务特性(ACID)?
高并发情况下生成唯一订单号解决方案
有10w个数 如何发挥cpu性能 快速求和 用java实现
死锁发生的原因有哪些?
Tomcat类加载机制/ J2EE应用中的class loader的层次结构?
索引扫描是不是一定比全表扫描快?为什么?
在阿里的统一日志系统下,如果做到对于每一次请求,设置单独的关键字?这样就可以通过统一日志快速搜索上下文;
聊聊spring的IOC和AOP,分别用到了什么技术;在实际使用中,会如何来使用?
聊聊nosql,对哪些熟悉?例如mongodb、memcache、redis。
聊聊java的juc框架,熟悉其中哪些类,都在什么时候使用到了,怎么使用的?
谈谈jvm的调优策略,在工作中有相关的处理经验的话请讲一下。
阿里二面:
介绍自己做的项目,其中的技术点、难点。关于项目的技术点,拓展聊了聊;
TCP/IP 握手过程,重传相关知识;
TCP 与 UDP 区别,TCP 可靠性保证,拥塞控制与流量控制;
各种排序算法的方式、时间复杂度;
哈希冲突解决方案,各个优缺点;
大量文件里进行去重;
进程和线程区别;
进程通信方式;
用户态和内核态区别;
Java 双亲委派机制,打破双亲委派;
volatile 和 synchronized 区别;
数据库索引的选取;
设计模式,主要问单例模式、观察者模式、工厂模式及抽象工厂模式。
阿里三面:
介绍自己做的项目,其中的技术点,开发历程;开发过程中遇到的难点,以及排查问题、解决的方式;
常用的数据结构,Arraylist 和 Linkedlist 的遍历效率;
平时技术的学习方式,在看什么书籍,接下来的学习方向。
最后
面试过程中我也学到了很多知识。感觉一面比较基础,二面对我来说比较有难度,三面问了一些没有准备到的地方。自己对后端这方面了解不多,面试过程中感觉自己回答的很一般也是在三面挂掉了,呜呜呜~只能接受事实,等到下半年再战。
最后针对上面的高频常问面试题我还总结出了各大互联网公司 java 程序员面试涉及到的绝大部分面试题及答案做成了文档和学习笔记文件以及架构视频资料需要的小伙伴可以关注我以后私信回复“666”即可领取
网友评论