变量类型和关键字
运算符和控制流
方法和构造函数
类和对象
继承和多态性
数据结构
数组
链表
栈
队列
树
图
算法
排序算法(冒泡排序、插入排序、快排)
搜索算法(线性搜索、二分查找)
数据结构遍历(递归、深度优先搜索、广度优先搜索)
异常处理
异常类型和层次结构
异常处理机制(try-catch-finally)
自定义异常
并发编程
线程和并发
同步机制(锁、同步块)
死锁和活锁
集合框架
List(ArrayList、LinkedList)
Set(HashSet、TreeSet)
Map(HashMap、TreeMap)
集合操作(添加、删除、查找)
输入/输出
文件输入/输出
流和缓冲
数据序列化
网络编程
Socket编程
HTTP通信
Web服务
其他重要概念
面向对象编程原则(封装、继承、多态性)
软件设计模式(单例模式、工厂模式、观察者模式)
Java虚拟机(JVM)
自动内存管理(垃圾回收)
注解和反射
建议的学习资源:
Oracle Java教程
Java SE 8 核心参考
Effective Java, 3rd Edition
Head First Java, 2nd Edition
Thinking in Java, 4th Edition
![](http://img1.baidu.com/it/u=2252136389,2765145893&fm=253.jpg)