转载

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

京东一面总结

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

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

线程安全: HashTable 以及 ConcurrentHashMap

非线程安全 :ArrayList HashMap

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

Collections.synchronizedMap(new HashMap<>())

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

3. 说一下 ConcurrentHaspMap 的实现?

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

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

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

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

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

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

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

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

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

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

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

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

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

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

10.MySql join union 的区别是啥?

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

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

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

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

是的

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

听不懂,过

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

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

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

  • 所在的部门及业务;
  • 所用的技术栈,以及学习建议;
  • 面试安排以及有几轮?
原文  http://www.cnblogs.com/Sirihu/p/11438563.html
正文到此结束
Loading...