JAVA语言基础:
- java基本类型、引用类型、多态底层、泛型底层、反射机制
- 常见的集合类源码分析hashMap、hashTable、ArrayList、LinkedList
- 推荐书籍:Java编程思想、Effective Java(深)
多线程并发编程:
- concurrent包源码分析
- 线程池、阻塞队列、非阻塞队列
- 各种所的使用、优化
- 原子类Atomic
- 并发安全容器
- 推荐书籍:Java高并发程序设计(浅)、Java并发编程实战(深)
Java虚拟机JVM:
- Java内存区域、OOM
- 垃圾回收算法、垃圾收集器
- 类加载机制、类加载器
- 虚拟机字节码执行引擎(重写、重载底层实现)
- Java内存模型JMM
- 推荐书籍:深入了解Java虚拟机
数据结构与算法:
- 常见的栈、堆、链表、二叉树、B/B+树、图(较少)
- 常见的排序算法:冒泡、选择、插入、快排、堆排序、归并(后三个核心函数熟练)
- 推荐书籍:大话数据结构
- 刷题:剑指offer、程序员代码面试指南、LeetCode
Web框架:
- Spring的源码分析
设计模式:
- 单例、代理、工厂(三种)、适配器、装饰器、策略、观察者
TCP/IP
- 待学习...