京东高级java面试题答案解析

学习编程的小伙伴们对面试一定很苦恼吧,这里小编整理了京东高级java面试题,一起来看看吧。

一面(主要是基础面)

自我介绍,主要问了做了什么和擅长什么

@Autowired的实现原理

Bean的默认作用范围是什么?其他的作用范围?

索引是什么概念有什么作用?

MySQL里主要有哪些索引结构?哈希索引和B+树索引比较?

说说Java线程池的原理?线程池有哪些?线程池工厂有哪些线程池类型,及其线程池参数是什么?

hashmap原理,处理哈希冲突用的哪种方法?

BIO、NIO、AIO的区别和联系?

jvm内存模型jmm 知道的全讲讲

讲讲Java GC机制?

Java怎么进行垃圾回收的?什么对象会进老年代?

垃圾回收算法有哪些?为什么新生代使用复制算法?

HashMap的时间复杂度?HashMap中Hash冲突是怎么解决的?Java8中的HashMap有什么变化?

红黑树需要比较大小才能进行插入,是依据什么进行比较的?其他Hash冲突解决方式?

hash和B+树的区别?分别应用于什么场景?哪个比较好?

二面(数据库问的比较多)

自我介绍

为什么MyISAM查询性能好?

说说事务特性(ACID)?

mysql数据库默认存储引擎,有什么优点

MySQL的事务隔离级别,分别解决什么问题。

SQL慢查询的常见优化步骤是什么?

说下乐观锁,悲观锁(select for update),并写出sql实现?

讲讲TCP协议的三次握手和四次挥手过程?

用到过哪些rpc框架?

Java web过滤器的生命周期?

三面(综合面主要分布式及缓存)

自我介绍,讲下项目!

加锁有什么机制?

数据库水平切分,垂直切分的设计思路和切分顺序

Redis如何解决key冲突?

如何保证数据库与redis缓存一致的

项目中消息队列怎么用的?使用哪些具体业务场景?

JVM相关的分析工具有使用过哪些?具体的性能调优步骤吗?

MySQL的慢sql优化一般如何来做?除此外还有什么方法优化?

线上的服务器监控指标,你认为哪些指标是最需要关注的?为什么?

soa和微服务的区别?

单机系统演变为分布式系统,会涉及到哪些技术的调整?请从前面负载到后端详细描述。

设计一个秒杀系统?

3.面试经验总结以及学习路线分享:

经验总结:

面试尽量提前到,能早点面试,面试官也更愿意给你通过(就像中国好声音一样,一开始都是疯狂转身)。

面试时调动你的幽默细胞,尽量把面试气氛调得愉快一点,这样面试官能更深的记住你。

说自己优点的时候一定辅以证据,不然面试官只会当作耳边风

不会的问题不要强答,小心有坑,可以这样说:“不好意思这个问题我不会,但是如果让我来设计我会.......”

面试其实是一个双向选择,面试官在评估你的表现,同时由于面试官也代表公司,他的素质及提的问题也是你应该评估的方面,所以不要紧张。

使用幕布,在每次面试前将自己总结的知识过一遍。我幕布上写了几万字的笔记,每次面试都拿出来看一遍,所以面试问到的基础我基本都能应答入流。

学习路线:

大部分职业都是需要有成长体系,才能让人有奋发向上的追求。架构师就是程序员这个群体成长道路上往往会出现的一个重要节点。每个好架构师都是一位出色的程序员。然而好的程序员进阶为架构师,并不容易。

以上就是本篇文章的所有内容,对一些面试题还有疑问的话可以来我们的java面试宝典中了解详情噢。

推荐阅读:

2020华为java面试题分享,一面

2020阿里java面试题分享,阿里java面试很难吗?

华为java面试题整理,2020年华为java面经