Java发展历史
Java并发
===============================
线程基础:线程状态
线程通信
内存模型,重排序,volatile,final底层原理,双检锁实现单例
锁,死锁,synchronized优化(锁的状态:偏向锁,轻量级锁,重量级锁。及其转化)
Lock接口,队列同步器,重入锁,读写锁,lockSupport, Condition
ConcurrentHashMap, ConcurrentLinkedQueue,阻塞队列,Fork/Join框架
13个原子操作类
并发工具类:countDownlatch, cyclicBarrier, Semaphore, Exchanger
线程池
Executor框架
线程安全
并发问题定位和性能调优
JVM
==============================
重排序,原子性 可见性 有序性
运行时数据区域
对象存活算法
垃圾收集算法
常用垃圾收集器原理及特征
JVM常用诊断及调优命令
JVM常用可视化工具
JVM调优案例(启动慢,程序崩溃,卡顿,OOM。。。)
Java字节码
========================
Class文件
字节码指令
类加载时机及过程
类加载器
运行时栈帧结构
方法解析和分派
动态类型语言支持
基于栈的字节码执行引擎
tomcat类加载器原理
字节码生成技术与动态代理