阿里开发岗二面、三面面经(社招)

二面

1.hashmap原理,put和get,为什么是8转红黑树,红黑树节点添加过程,什么时候扩容,为什么是0.75,扩容步骤,为什么分高低位,1.7到1.8有什么优化,hash算法做了哪些优化,头插法有什么问题,为什么线程不安全

2.arraylist原理,为什么数组加transient,add和get时间复杂度,扩容原理,和linkedlist区别,原理,分别在什么场景下使用,为什么

3.了解哪些并发工具类

4.reentrantlock的实现原理,加锁和释放锁的一个过程,aqs,公平和非公平,可重入,可中断怎么实现的

5.concurrenthashmap原理,put,get,size,扩容,怎么保证线程安全的,1.7和1.8的区别,为什么用synchronized,分段锁有什么问题,hash算法做了哪些优化

6.threadlocal用过么,什么场景下使用的,原理,hash冲突怎么办,扩容实现,会有线程安全问题么,内存泄漏产生原因,怎么解决

7.垃圾收集算法,各有什么优缺点,gc roots有哪些,什么情况下会发生full gc

8.了解哪些设计模式,工厂,策略,装饰者,桥接模式讲讲,单例模式会有什么问题

9.对spring aop的理解,解决什么问题,实现原理,jdk动态代理,cglib区别,优缺点,怎么实现方法的调用的

10.mysql中有一个索引(a,b,c),有一条sql,where a = 1 and b > 1 and c =1;可以用到索引么,为什么没用到,B+树的结构,为什么不用红黑树,B树,一千万的数据大概多少次io

11.mysql聚簇索引,覆盖索引,底层结构,主键索引,没有主键怎么办,会自己生成主键为什么还要自定义主键,自动生成的主键有什么问题

12.redis线程模型,单线程有什么优缺点,为什么单线程能保证高性能,什么情况下会出现阻塞,怎么解决

13.kafka是怎么保证高可用性的,讲讲它的设计架构,为什么读写都在主分区,这样有什么优缺点

了解DDD么,不是很了解

你平时是怎么学习的

项目介绍


#面经##社招##阿里巴巴##Java工程师#
全部评论
最近就刚好在学DDD,来了以后才听说过这玩意儿
1 回复 分享
发布于 2021-07-18 23:24
10用不到索引吗😂
2 回复 分享
发布于 2021-07-30 00:08
怎么这么卷
点赞 回复 分享
发布于 2021-07-24 11:04

相关推荐

头像
11-09 12:17
清华大学 C++
out11Man:小丑罢了,不用理会
点赞 评论 收藏
分享
4 105 评论
分享
牛客网
牛客企业服务