银十期间得蚂蚁面试机会(本人非985/211,蚂蚁真的不是很在乎学历!!!),有了一次社招机会,前后经历三关,受益匪浅,在此与各位朋友分享经历与心得。
蚂蚁金服Java研发一面(电话面,30分钟左右)
- 自我介绍,讲下最有难度的项目
- 对线程安全的理解
- 比如有一个局部变量i=1,两个线程同时执行,是否线程安全
- 比如再有一个共享变量,如何保证线程安全
- 说说ThreadLocal,底层如何实现
- hashmap实现原理
- volatile关键字,解决了什么问题
- 类加载机制
- JVM内存分布/内存结构?栈和堆的区别?堆的结构?为什么两个survivor区?
- 对象在堆内存创建的生命周期
- Spring的原理?AOP的实现?
- 面向对象的设计原则?OCP?
- 分布式系统如何保证数据一致性
- 有一个方法接收一个消息类型数据,通过if-else处理,如何优化
- 设计一个秒杀系统?考虑哪些问题?
- 有什么问题想问
面试官没有问得很深入,就是对于线程安全高并发比较看重是真的,整个面试过程还是聊