阿里巴巴淘天集团后端暑期实习面经(已挂)
没想到现在竟然还有面试,来都来了,就面一下吧。
一面
5月12日13:45——14:15
- 自我介绍
- 面向对象三大特性
- 重写和重载
- protected 关键字和 default 关键字的作用范围
- 栈帧中有哪些东西?
- 堆中有哪些区域?
- new 一个对象存放在哪里?
- CMS 收集器回收阶段
- CMS 收集器回收过程哪些需要暂停线程?
- HashMap JDK 1.7 和 1.8 区别
- ConcurrentHashMap JDK 1.7 和 1.8 区别
- 进程和线程的区别
- synchronized 关键字和 ReentrantLock 区别
- synchronized 关键字和 ReentrantLock 实现线程安全的底层
- 线程池参数
- Redis 的 Zset 底层数据结构
- Redis 集群环境下怎么实现高可用?
- 消息队列了解吗?(不了解)
- 微服务了解吗?(不了解)
- 反问
二面
5月17日10:30——11:20
- 介绍一下项目相关的技术
- MQ 相关原理了解过吗?
- Spring 容器的启动流程
- 在 BeanDefinition 创建的过程前后做了什么事?
- ClassLoader 了解吗?
- ClassLoader 具体是怎么解析的?
- Java 内存模型
- 线程之间的通信方式
- 线程不安全的底层原因是什么?
- 实现线程安全的方式有哪些?
- sleep、yield 和 wait 的区别
- Java 中的 I/O
- 不同 I/O 模型的应用
- I/O 还有分类吗?
- JVM 为什么要分代
- JVM 指令了解过吗?
- 用过什么 JVM 指令?
- JVM 内存占用大怎么排查?
- 唯一索引和主键索引的区别
- 怎么避免回表?
- SQL 优化
- 序列化了解吗?
- 为什么要使用序列化?
- 排序算法有哪些?
- 归并排序的思想,时空复杂度,稳定性,为什么是稳定的?
- 选择排序的思想,时空复杂度,稳定性,为什么是不稳定的?
- 平时学习技术的方式
- 有没有参加过开源项目?
- 反问