上次挂在了京东(Java 岗)二面不服气,这次终于拿下 offer 努力终于有收获
前言
这话要从三个月前说起:当时一名水友告诉我想要跳槽去京东,然后我就本着推波助澜,为粉丝打气的心态(也可能是看热闹不嫌事儿大?)就支持他一定要去,梦想一定要有,没准儿就实现了呢?
没想到。。。。。。。直接凉凉!
以下为第一次京东二面凉经
京东一面凉经
-
object 的方法,7 大方法
-
synchronized 方法讲解
-
synchronized 方法实现原理
-
volatile 关键字的原理
-
锁的分类
-
偏向锁讲解
-
NoClassDefFoundError 和 ClassNotFoundException 的区别
-
追问,ClassNotFoundException 是不是只发生在编译时,运行时可不可以
-
类加载机 制
-
redis 过期策略及内存淘汰机制
-
mysql 的索引种类 4 种
-
Innodb 和 myIsam 的区别
-
Innodb 的索引结构
-
B+树的优缺点
-
海量数据的索引有什么影响
-
选择联合索引还是多索引,最左前缀的规则
-
CAP 理论的关系
-
见过哪些系统,保证两个牺牲一个的
-
一致性 Hash
算法题:给一个正数N,求这个N的所有的因子分解;N = 12;Ans = {12},{6,2},{3,4},{3,2,2}解法:递归
京东二面凉经
-
自我介绍+项目
-
项目中的异步怎么做的?具体说说
-
用户密码的安全性怎么保证的?
-
mybatis 底层怎么实现的?(不会)
-
tcp 中拥塞控制和流量控制有什么区别?
-
流量控制具体怎么控制的?
-
拥塞控制具体的算法怎么样的?
-
Java 中的锁有用到哪些?
-
说说 syn、re 和 cas 的区别?
-
cas 具体怎么现实的?
-
进程和线程的区别?具体讲下什么情况下是多进程,什么情况下是多线程?
-
java 中的 map 有哪些?各个简单介绍下
-
hashmap 的底层数据结构是怎么样的?
-
有没有 map 是按 key 的值排序的?底层怎么现实的?
-
类的加载流程?具体每一步做了什么?
-
Spring Bean 的作用域。
两道算法题1、有序二维数组找target,找到返回坐标,找不到返回[-1, -1];2、树的根节点到叶子节点的所有路径和。
失败乃成功之母
以上就是第一次京东面试的全部内容了,一面二面是接着面的,时长 2 个小时,经历下来,就一个感受:京东的面试太硬核了,就是会一直问到底,看你到底掌握到什么程度,如果掌握的不深刻很容易就被问出来了。二面完之后就让粉丝回家了,PASS 的也是很含蓄了。
但是你以为这样就结束了?当然没有!
据我所知京东跳动投递简历是有三个月的锁定时间,所以这次失败了不代表没有下次。然后就总结了经验并为下次面试作准备并开始了三个月的闭关之旅。
1. 恶补 JAVA 并发底层的知识,尤其是 synchronized,volatile 和 hashmap 的 2. 刷算法题,需要详细复习下数据结构与算法的知识 3. 了解高并发下的问题解决方案与性能调优 4. 阅读是 spring 框架的源码,提升自己的竞争优势
重整旗鼓再战京东
这次面试官果然上来就直接问:看你 6 月份也来面过京东但没有通过,你觉得你现在的优势在哪里呢??
回答:因为上次来贵公司面试没有准备充分,同时在之后认识到自己有些技术方面确实明显不足,所以回去经过系统的学习,我觉得这次能够胜任这份工作!
然后面试官看着他笑了笑(应该是欣赏的意思吧),然后第二次面试就正式开始了!因为第二次面试与第一次相差不大,第二次面试内容通过知识点的分类给大家分享出来。
JVM
-
什么样的垃圾才被回收?
-
如何利用 JFR 和 JMC 监控 Java 程序?
-
解释下 Java 虚拟机内存模型
-
JVM 垃圾收集机制
-
什么样的对象会进入老年代
-
讲一下 OOM 与调优
MySQL
-
说说自己对于 MySQL 常见的两种存储引擎:MyISAM 与 InnoDB 的理解?
-
数据库索引了解吗?
-
为什么索引能提高查询速度?
-
Mysql 如何为表字段添加索引?
-
对于大表的常见优化手段说一下?
spring
可能是简历上专门写了阅读过源码,所以这次问 spring 的比较多
-
Spring 框架中都用到了哪些设计模式?
-
Spring 事务的实现方式和实现原理
-
Bean Factory 和 ApplicationContext 有什么区别?
-
什么是 Spring 中的依赖注入?
-
IOC(依赖注入)有哪些不同类型?
-
解释 Spring Bean 的生命周期?
-
有哪些重要的 bean 生命周期方法?你能重写它们吗?
分布式
-
为什么要用 redis 缓存?
-
为什么要用 redis 而不用 map/guava 做缓存?
-
redis 和 memcached 的区别?
-
redis 常见数据结构以及使用场景分析?(String,Hash,List,Set,Sorted Set)
-
redis 设置过期时间。
-
redis 内存淘汰机制(MySQL 里有 2000w 数据,Redis 中只存 20w 的数据,如何保证 Redis 中的数据都是热点数据?)
-
redis 持久化机制(怎么保证 redis 挂掉之后再重启数据可以进行恢复)?
-
redis 事务。
-
缓存雪崩和缓存穿透问题解决方案。
-
如何解决 Redis 的并发竞争 Key 问题。
-
如何保证缓存与数据库双写时的数据一致性?
-
什么是消息队列?为什么要用消息队列?
第二次面试总结
第二次去京东面试因为准备的时间比较长,所以面试问题基本都在意料之中,最终也成功拿下了京东的 offer,可喜可贺!
最后把面试京东成功的资料免费分享给大家,也祝大家都能升职加薪!
资料领取方式: 添加小助理vx:mxzFAFAFA来领取~
Java面试资料分享!!!