京东一面总结  

总共时间持续时间约40分钟

1.你用过集合类里面哪些是线程安全的,哪些是线程不安全的?分别举两个例子?

  线程安全:HashTable以及ConcurrentHashMap

  非线程安全:ArrayListHashMap

 

2.实现线程安全的集合类都有哪些方法,如果是你要用线程安全的集合类,你会怎么选?为什么?

  Collections.synchronizedMap(new HashMap<>())

  ConcurrentHashMap,锁的粒度更细,能实现更好的并发。

 

 3.说一下ConcurrentHaspMap的实现?

   1.7分段锁,每个segment相当于一把锁,每个segment管理一部分数组的位置;

   1.8粒度更细,数组的每个位置相当于一把锁,基于CASsynchronized实现,get方法不需要获取锁

 

4.ArrayList容量不够了,怎么办?

  介绍了一下ArrayList的初始化参数,默认容量是10,扩容是扩1.5倍, newCap=oldCap+oldCap>>1;扩容的过程是先申请一个newCap长度的空数组,再把之前 旧数组的值复制过来;

 

5.ThreadLocal有了解吗?介绍一下

  Threadlocal为每个线程创建一个变量副本,每个线程操作自己的副本

 

6.AtomicLong这种原子类的实现知道吗?

  基于循环CAS实现的,介绍了一下CAS

 

 7.要你动手实现一个从Java对象到Json的转换,你要怎么做?

  不会,说了反射,但是面试官也没说话。

 

 8.微服务的调用主要基于RPCRest接口,说一下微服务调用的一个基本过程?

  不会,扯了一下实习的微服务流程,然后就。。。下一个

 

9.MySql数据库InnoDB存储引擎支持哪些隔离界别?其中可重复读底层是怎么实现的?

  读未提交、读已提交、可重复读、可串行化

 

10.MySqljoinunion的区别是啥?

  Join是表连接(横向),分为leftjoin/innerjoin/rightjoin/fulljoin;

  union是表拼接(合并表格)UNION 内部的 SELECT 语句必须拥有相同数量的列。列也 必须拥有相似的数据类型

  UNION 只选取记录,会选取不同的值;而UNION ALL会列出所有记录,包括重复的

 

11.Spring里面创建Bean,在不指定Scope的情况下创建的Bean是单例吗?

  是的

 

12.Spring里面事务的传播级别?比如A方法有事务,B方法没有事务,怎么整?

  听不懂,过

 

13.Spring框架里面AOP是啥?怎么个用法?

  对已有方法进行功能的增强,不需要改变业务代码,常用于记录操作日志

 

14.时间差不多了,你还有什么问题问我?

  • 所在的部门及业务;
  • 所用的技术栈,以及学习建议;
  • 面试安排以及有几轮?

版权声明:本文为Sirihu原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://www.cnblogs.com/Sirihu/p/11438563.html