2022届秋招|校招 阿里蚂蚁 Java开发 一面二面挂
一面(50min):
1.Java: JVM原理
里面的加载器和加载模式
加载器的加载顺序
2.堆栈区别
String s = “123” Student s = new Student 这两个代码运行过程是什么(放在堆还是栈)
String s = new String(“123”) 这个在哪
3.Java: 说一下GC回收机制
垃圾回收器一直在演进 你知道这个演进过程吗
CMS和G1了解吗 它们两个的区别
垃圾回收策略 你觉得这几个算法中哪个是最好的
垃圾回收器停顿和并发的指标(不知道)
4.怎样理解多线程的
线程中锁有几种
实现锁的形式有哪几种(其实就是说那两个关键字)
实现线程的方法
线程池有几种实现方式
newscheduledThreadPool用过吗 从字面意思上看它是什么
5.讲一讲CAS
讲一讲AQS
LinkedBlockedQueue底层实现了解吗
6.ReentrantLock和Synchronized区别
非公平的解释
什么是自旋锁/可重入锁
7.进程间通信方式有哪些
体现在具体的方法上呢(问到这里面试官才知道我Java是自学的(意思是学校里没有专门的课 我寻思学校课也没法教那么深) 我说我们学校就只用C教大家入门 后面不限定语言 我寻思大多数学校不应该都这样的吗)
因为上面那个问题 问了你知道我们阿里的背景吗 大多数系统都是Java实现的 你用过哪些阿里的东西吗(sofa)
8.Java:常见的集合
讲一下HashMap HashMap的大小是可以限定的吗 它是怎么扩容的 扩容算法有哪些
HashTable了解吗
ConcurrentHashMap怎么实现的 具体实现呢
Synchronized操作的对象是什么 Node节点在什么地方存
说一下Segment 1.7的ConcurrentHashMap怎么用它实现的
LinkedHashMap用过吗
9.排序算法里面你最熟悉的哪个
快排原理说一下 用它实现查找的原理是什么
图你学的怎么样(早忘了)
10.简单介绍一下实习项目
11.了解微服务吗
12.机考复盘
13.你们学校对于竞赛或者项目的政策是什么