2020届京东秋招正式批一面记录-Java开发-2019.08.31

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是啥?怎么个用法?

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

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/zwszgg.html