- Java语言
- 数据类型、关键字作用、包装类、字符串等
- 面向对象的特性:继承、封装、多态
- 集合框架:整体设计、源码设计、多线程问题
- Java8:Stream API(流水线机制)、lambda、函数式编程等
- 并发编程:synchronized 、 J.U.C 、原子类、CountDownLatch等
- synchronized: 作用、实现原理、锁升级、
- volatile: 内存语义、JMM等
- AQS内部源码实现、LockSupport、并发控制类中的Sync内部类实现
- J.U.C:AtomicX(CAS)、XXAdder、Lock(ReentrantLock、ReentrantReadWriteLock)、CyclicBarrier、CountDownLatch
- Java协程、Thread、线程状态、Callable、FutureTask、Runnable、Object中的线程相关方法
- 阻塞队列(DelayQueue、ArrayBlockingQueue、LinkedBlockingQueue)、实现一个阻塞队列的多种方法
- 线程池:使用、队列的选择、参数、状态流、怎么实现线程共享、Executors、ThreadPoolExecutor、Fork/Join线程池
- 并发容器:ConcurrentHashMap、CopyOnWriteArrayList、ConcurrentSkipListMap
- 生产者与消费者、多线程协作打印字符串、哲学家就餐问题等
- synchronized: 作用、实现原理、锁升级、
- Java虚拟机:
- Java内存区域:堆、栈(虚拟机栈、本地方法栈)、程序计数器、元空间(方法区)
- 辣鸡回收算法、辣鸡收集器
- 类加载的周期、双亲委派机制、各个类加载器的作用
- Java内存区域:堆、栈(虚拟机栈、本地方法栈)、程序计数器、元空间(方法区)
- Java代码规范
- 数据类型、关键字作用、包装类、字符串等
- Java语言