前言
18年毕业到现在有三年多了,最近去面试了阿里集团(菜鸟网络,蚂蚁金服),网易,滴滴,京东,最终收到点我达,网易offer,蚂蚁金服二面挂掉, 菜鸟网络一个月了还在流程中...最终有幸去了京东。(跟我东哥做兄弟)
但是要特别感谢点我达的领导及HR,真的非常非常好,很感谢他们一直的关照和指导。回馈小伙伴一波面经及我的复习宝典 (是真的很全,请往下看)
京东面试问到的问题
同时这些问题,我已经整理在了这份大厂Java面试进阶解析宝典里了,有需要的小伙伴麻烦转发下后私信回复【面试】即可来获取哦!
- JVM底层的有哪几种垃圾回收算法,有什么区别。简述一下你了解的垃圾回收器有哪些,有什么区别。
- 简述一下CAS的实现原理
- 简单描述一下java中的线程池,线程池是如何保证工作线程不会销毁?如果设置线程池的CorePoolSIze为0,MaxMumSize>1,描述一下内部是如何工作的。你在工作中是如何设置线程池的参数的为什么。
- StringBuffer和StringBuilder的区别
- 简单描述一下ReentrantLock的实现原理?
- New String(“abc”) 在jvm内存区域会创建几个对象
- LinkedList和ArrayList有什么区别,你在工作中一般怎么用,为什么。
- 说一下你了解的jdk中的并发容器有哪些,你工作中用到哪些?描述一下ArrayBlockingQueue和LinkedBlokingQueue的区别。
- 简述一下ConcrrentHashMap插入数据的流程。
- 在main方法中启动10个线程,可以有哪些方式实现等待这10个线程完成工作再执行其他的任务。
- 有大量数据存储在某数组中,在多线程情况下,如何保证读取的正确性(所有线程并发读取这个数组中的数据,不少读一条也不多读一条)
- 说一下你在工作过程中对jvm的调优经验。
- Mysql中存在哪些隔离级别,有什么问题,分别怎么解决的。
- Mysql中有哪些储存引擎,简述一下你对innodb引擎的理解。
- 当一个查询语句的where条件是一个子查询,在高并发的情况下,mysql是如何保证子查询的数据的正确性?这道题有点开放,可以配合不同的隔离级别加上MVCC和readV