阿里技术一面,Java研发岗
之前过了个简单的简历面,过了几天后没打来以为凉了,然后昨晚又接到了电话,括号内容是回答说的,理解有限,不一定都对,欢迎纠正~加油每一个牛友们!
阿里一面:
1.学过哪些技术知识呢?
2.说说接口和抽象类的区别(语法,设计,跨域三方面)
3.怎么判断两个对象是否相等?(名称和类加载器)
4.==和equals的区别(比较方式)
5.排序算法有哪些呢(分类说,插入,选择,交换,归并,基排)
5.堆排序的时间复杂度?怎么计算的(logn)
6.说说归并的算法过程(先划分,归并,递归实现,把过程理清)
7.知道先序,中序,后序遍历吗?(把算法过程说一遍)
8.知道Java高并发相关知识吗?(并发包,把里面的内容介绍一边,介绍了闭锁,同步屏障,信号量的应用和底层实现:流控,线程执行顺序等)
9.谈谈JVM(从javac编译4阶段:词法,语法语义,生成,到类加载过程:双亲委派:加载,验证,准备,解析,实例化,实例化先谈堆分区,再说JVM内存结构,然后到GC,GC算法,触发条件,晋升,YGC,CMS过程实现,可达性分析等等,把整个体系说完后面试官肯定了一句说理解得不错…)
10.做过哪些项目?用过哪些框架和技术呢?(SSH,M,Redis,Netty)
11.看过spring 源码吗?(把容器启动过程说了一遍,xml解析,bean装载,bean缓存等)
12.说说AOP实现原理(动态***:jdk,cglib,分别用了哪些类或接口)
13.事务的实现原理?(源码)
14.说说四层网络模型(每层的协议及应用)
15.谈谈tcp,udp的区别,分别有哪些应用(可靠,面向连接,首部)
16.说说tcp三次握手过程?
17.为什么是3次,2次可以吗?4次呢?(从失效的数据报谈2次为什么不行,从响应时间说为什么不用4次)
18.你有什么想问我的?(问了分布式,负载均衡,缓存相关的,面试官回答说这些对校招是加分项,不懂也没关系,懂了的就更好,说校招关键还是基础,多看源码分析,多关注底层原理)
19.面了50分钟左右