JavaSE 核心知识体系思维导图
graph TD
A[JavaSE 核心知识体系] --> B[Java 基础];
A --> C[面向对象编程];
A --> D[核心 API];
A --> E[高级特性];
A --> F[输入输出];
A --> G[多线程];
A --> H[网络编程];
subgraph B[Java 基础]
B1[Java 语言特点]
B2[环境搭建]
B3[基本语法]
B4[数组]
B1 --> B1_1(跨平台)
B1 --> B1_2(面向对象)
B1 --> B1_3(简单性)
B1 --> B1_4(安全性)
B1 --> B1_5(健壮性)
B2 --> B2_1(JDK)
B2 --> B2_2(JRE)
B2 --> B2_3(JVM)
B2 --> B2_4(Path & Classpath)
B3 --> B3_1(变量与数据类型)
B3 --> B3_2(运算符)
B3 --> B3_3(流程控制)
B3 --> B3_4(方法)
B4 --> B4_1(一维数组)
B4 --> B4_2(二维数组)
B4 --> B4_3(数组工具类 Arrays)
end
subgraph C[面向对象编程]
C1[三大特性]
C2[核心概念]
C3[关键字]
C1 --> C1_1(封装)
C1 --> C1_2(继承)
C1 --> C1_3(多态)
C2 --> C2_1(类与对象)
C2 --> C2_2(成员变量 vs 局部变量)
C2 --> C2_3(构造方法)
C2 --> C2_4(this 关键字)
C2 --> C2_5(静态 static)
C3 --> C3_1(new)
C3 --> C3_2(super)
C3 --> C3_3(final)
C3 --> C3_4(instanceof)
C3 --> C3_5(抽象 abstract)
C3 --> C3_6(接口 interface)
end
subgraph D[核心 API]
D1[常用类]
D2[集合框架]
D3[异常处理]
D1 --> D1_1(String & StringBuilder)
D1 --> D1_2(包装类)
D1 --> D1_3(Math & Random)
D1 --> D1_4(Date & 时间 API)
D2 --> D2_1(Collection 接口)
D2 --> D2_2(List 接口)
D2 --> D2_3(Set 接口)
D2 --> D2_4(Map 接口)
D2 --> D2_5(迭代器 Iterator)
D3 --> D3_1(try-catch-finally)
D3 --> D3_2(throw & throws)
D3 --> D3_3(异常体系)
D3 --> D3_4(自定义异常)
end
subgraph E[高级特性]
E1[泛型]
E2[注解]
E3[反射]
E4[Lambda 表达式]
E1 --> E1_1(泛型类/接口/方法)
E1 --> E1_2(通配符)
E1 --> E1_3(类型擦除)
E2 --> E2_1(内置注解)
E2 --> E2_2(元注解)
E2 --> E2_3(自定义注解)
E3 --> E3_1(Class 类)
E3 --> E3_2(获取 Class 对象)
E3 --> E3_3(获取成员信息)
E3 --> E3_4(动态创建对象)
E4 --> E4_1(函数式接口)
E4 --> E4_2(Stream API)
E4 --> E4_3(方法引用)
end
subgraph F[输入输出]
F1[IO 模型]
F2[字节流]
F3[字符流]
F4[NIO.2]
F1 --> F1_1(流的概念)
F1 --> F1_2(节点流 vs 处理流)
F2 --> F2_1(InputStream / OutputStream)
F2 --> F2_2(FileInputStream / FileOutputStream)
F2 --> F2_3(BufferedInputStream / BufferedOutputStream)
F3 --> F3_1(Reader / Writer)
F3 --> F3_2(FileReader / FileWriter)
F3 --> F3_3(BufferedReader / BufferedWriter)
F4 --> F4_1(Path & Files)
F4 --> F4_2(Channels & Buffers)
end
subgraph G[多线程]
G1[基础概念]
G2[创建方式]
G3[线程同步]
G4[并发工具]
G1 --> G1_1(进程 vs 线程)
G1 --> G1_2(生命周期/状态)
G1 --> G1_3(调度)
G2 --> G2_1(Thread 类)
G2 --> G2_2(Runnable 接口)
G2 --> G2_3(Callable & Future)
G3 --> G3_1(synchronized)
G3 --> G3_2(Lock 接口)
G3 --> G3_3(volatile)
G3 --> G3_4(线程池)
G4 --> G4_1(CountDownLatch)
G4 --> G4_2(CyclicBarrier)
G4 --> G4_3(Semaphore)
end
subgraph H[网络编程]
H1[网络基础]
H2[TCP 编程]
H3[UDP 编程]
H1 --> H1_1(IP & 端口)
H1 --> H1_2(协议: TCP/UDP)
H1 --> H1_3(InetAddress)
H2 --> H2_1(Socket)
H2 --> H2_2(ServerSocket)
H2 --> H2_3(三次握手)
H3 --> H3_1(DatagramSocket)
H3 --> H3_2(DatagramPacket)
H3 --> H3_3(面向无连接)
end
思维导图文字版
如果你无法查看图形,这里提供详细的文字版,方便你理解和整理笔记。

A. JavaSE 核心知识体系
B. Java 基础
- B1. Java 语言特点
- 跨平台性(一次编写,到处运行)
- 面向对象
- 简单性
- 安全性
- 健壮性
- B2. 环境搭建
- JDK (Java Development Kit)
- JRE (Java Runtime Environment)
- JVM (Java Virtual Machine)
- Path 与 Classpath 配置
- B3. 基本语法
- 变量与数据类型(基本类型 vs 引用类型)
- 运算符(算术、关系、逻辑、赋值、三目)
- 流程控制(
if-else,switch,for,while,do-while) - 方法的定义、调用、重载
- B4. 数组
- 一维数组的声明、创建、初始化、遍历
- 二维数组的声明、创建、初始化、遍历
- 数组工具类
java.util.Arrays
C. 面向对象编程
- C1. 三大特性
- 封装:隐藏内部实现,暴露公共接口(
private,public,protected) - 继承:子类继承父类的属性和方法(
extends) - 多态:同一方法,不同行为(继承、重写、父类引用指向子类对象)
- 封装:隐藏内部实现,暴露公共接口(
- C2. 核心概念
- 类与对象(
class和new) - 成员变量 vs 局部变量
- 构造方法(无参、有参、重载)
this关键字(指向当前对象)- 静态
static(静态变量、静态方法、静态代码块)
- 类与对象(
- C3. 关键字
new,super,finalinstanceofabstract(抽象类、抽象方法)interface(接口)
D. 核心 API
- D1. 常用类
String&StringBuilder/StringBuffer(不可变 vs 可变)- 包装类(
Integer,Double等,与基本类型的转换) Math&Random(数学运算和随机数)- 日期时间 API(
java.time包:LocalDate,LocalTime,LocalDateTime)
- D2. 集合框架
Collection接口List接口(ArrayList,LinkedList,有序可重复)Set接口(HashSet,TreeSet,无序不可重复)Map接口(HashMap,TreeMap,Hashtable,键值对存储)- 迭代器
Iterator
- D3. 异常处理
try-catch-finally结构throw&throws关键字- 异常体系(
ErrorvsException,受检异常 vs 非受检异常) - 自定义异常
E. 高级特性
- E1. 泛型
- 泛型类、泛型接口、泛型方法
- 通配符 (,
? extends T,? super T) - 类型擦除
- E2. 注解
- 内置注解 (
@Override,@Deprecated,@SuppressWarnings) - 元注解 (
@Target,@Retention,@Documented,@Inherited) - 自定义注解
- 内置注解 (
- E3. 反射
Class类(获取 Class 对象的三种方式)- 获取类的成员信息(构造器、方法、字段)
- 动态创建对象、调用方法、访问字段
- E4. Lambda 表达式与 Stream API
- 函数式接口(
@FunctionalInterface) - Lambda 表达式语法
- Stream API(流的创建、中间操作、终端操作)
- 函数式接口(
F. 输入输出
- F1. IO 模型
- 流的概念(字节流、字符流)
- 节点流 vs 处理流(/ 过滤流)
- F2. 字节流
InputStream/OutputStreamFileInputStream/FileOutputStreamBufferedInputStream/BufferedOutputStream
- F3. 字符流
Reader/WriterFileReader/FileWriterBufferedReader/BufferedWriter
- F4. NIO.2 (New IO)
Path&Files工具类Channels&Buffers(非阻塞IO模型)
G. 多线程
- G1. 基础概念
- 进程 vs 线程
- 线程生命周期(新建、就绪、运行、阻塞、死亡)
- 线程调度
- G2. 创建方式
- 继承
Thread类 - 实现
Runnable接口 - 实现
Callable接口(FutureTask)
- 继承
- G3. 线程同步
synchronized关键字(方法锁、代码块锁)Lock接口(ReentrantLock)volatile关键字(可见性、禁止指令重排)- 线程池 (
ExecutorService)
- G4. 并发工具
CountDownLatch(倒计时门闩)CyclicBarrier(循环栅栏)Semaphore(信号量)
H. 网络编程
- H1. 网络基础
- IP 地址与端口号
- 网络协议(TCP, UDP)
InetAddress类
- H2. TCP 编程
Socket(客户端)ServerSocket(服务端)- 基于 TCP 的可靠、面向连接通信
- H3. UDP 编程
DatagramSocket(发送/接收)DatagramPacket(数据报包)- 基于 UDP 的不可靠、无连接通信
如何使用这份思维导图
- 建立全局观:从最顶层的
JavaSE 核心知识体系开始,了解 JavaSE 的主要构成部分。 - 逐个击破:选择一个你感兴趣的或薄弱的模块(
面向对象编程),深入到它的子节点。 - 关联学习:学习一个知识点时,思考它与其他知识点的联系,学习
集合框架时,可以思考它与泛型的关系;学习多线程时,可以思考它与IO的关系(如 NIO)。 - 实践检验:思维导图是骨架,真正的血肉需要通过编码实践来填充,根据导图中的每个知识点,去写代码、做练习,验证你的理解。
- 动态更新:随着学习的深入,你可以不断地在这个思维导图上添加新的细节、注释和心得,让它成为你自己的知识地图。
希望这份思维导图能帮助你更好地学习和掌握 JavaSE!
