备注:针对基本问题做一些基本的总结,不是详细解答!
1.HashMap和ConcurrentHashMap区别(必考)
2. ConcurrentHashMap的数据结构(必考)
3.高并发HashMap的环是如何产生的
4.HashMap1.7与HashMap1.8的区别,从数据结构上、Hash值的计算上、链表数据的插入方法、内部Entry类的实现上分析?
5.Hash1.7是基于数组和链表实现的,为什么不用双链表?HashMap1.8中引入红黑树的原因是?为什么要用红黑树而不是平衡二叉树?
6.HashMap、HashTable、ConcurrentHashMap的原理与区别?
7.volatile与synchronized的区别是什么?volatile作用(必考)
8.synchronized和Lock的区别(必考)
9.Atomic类如何保证原子性(CAS操作)(必考)
10.Java不可重入锁与可重入锁的区别如何理解?
11.多线程中sleep与wait的区别是什么?
12.final、finnally、finalize的区别是什么?
13.ThreadLocal的原理和实现
14.为什么要使用线程池(必考)
15.如何控制线程池线程的优先级
16.线程之间如何通信
17.核心线程池ThreadPoolExecutor的参数(必考)
18.ThreadPoolExecutor的工作流程(必考)
19.Boolean占几个字节
20.Exception和Error
21.Object类内的方法
22.Jdk1.8/Jdk1.7都分别新增了哪些特性
23.SpringBuffer和SpringBuilder的区别是什么?性能对比?如何鉴定线程安全?
24.Array和ArrayList有什么区别?使用时注意事项有哪些?
25.LRU算法是怎么实现的?大致说明下
26.CAS?CAS 有什么缺陷,如何解决?
27.ScheduledThreadPoolExecutor中的使用的是什么队列?内部如何实现任务排序的?