零基础学 Java · 深度学习指南(细化版)
作者:戚爱斌| 真实结构:171 讲(视频课) 定位:给纯小白的 Java 第一课——从 HelloWorld 到面向对象、异常、集合、IO、网络、多线程、Maven,一站打穿 Java 基础。课时多,讲得细。
一、这门课到底讲什么
这是「手把手」级别的 Java 入门课,171 讲把 Java 的每个基础知识点都掰开揉碎:环境搭建、基本类型、运算符、面向对象、异常、集合框架、泛型、注解、lambda、IO、网络编程、多线程、并发包、Maven……最终目标是让你从零写出一个「超市系统」和「聊天室」。
二、真实讲次大纲(按模块)
模块 1:环境与基础语法(第 1–16 讲)
- 环境搭建(macOS/Windows)、HelloWorld、IDEA、变量、基本数据类型、运算符(含位运算符)、字符集编码
模块 2:面向对象(第 17–约 104 讲,跨度大)
- 类、对象、方法、封装、继承、多态、抽象类、接口、内部类、匿名类
- 实战:让超市运转起来(设计篇 + 代码篇)
模块 3:异常处理(第 105–113 讲)
- try-catch、异常分类、抛异常、异常传递、自定义异常、finally、自动回收资源的 try
模块 4:集合框架(第 114–126 讲)
- Collection、List、Set、Map、泛型、Iterator、注解、lambda、自动装箱拆箱
模块 5:IO 与文件(第 127–130 讲)
- File 类、Java IO、读写文件小程序
模块 6:网络编程(第 131–134 讲)
- 网络术语、Socket 通信小程序、抓取网页内容
模块 7:多线程与并发(第 135–152 讲,精华)
- 线程创建、多线程混乱、synchronized、wait/notify、生产者消费者模型、死锁、ThreadLocal、定时任务、volatile、concurrent 包(Atomic、锁、并发容器)
- 实战:聊天室
模块 8:工具链(第 153–171 讲)
- 什么是学习一门语言、Java 平台、Maven、抽取 pptx 文字小工具等
三、必须吃透的核心知识点
-
面向对象三大特性(模块 2):封装(隐藏细节)、继承(复用代码)、多态(同一接口不同实现)。Java 的灵魂。
-
集合框架(模块 4):List(有序)、Set(去重)、Map(键值)。ArrayList vs LinkedList、HashMap 的原理——这些是面试高频。
-
异常体系(模块 3):受检异常 vs 运行时异常。
try-with-resources自动关流。 -
多线程(模块 7,Java 进阶的关键):synchronized、wait/notify、volatile、concurrent 包。生产者消费者模型是并发编程的「Hello World」级经典。
-
「超市系统」和「聊天室」两个项目:一个练 OOP,一个练网络 + 多线程——把前面所有知识串起来。
四、引发思考
- 抽象类和接口的区别?什么时候用接口、什么时候用抽象类?
==和equals()的区别?为什么字符串比较常出 bug?- ArrayList 和 LinkedList 底层分别是什么?各自适合什么场景?
volatile和synchronized的区别?volatile 能替代锁吗?- 生产者消费者模型为什么要用 wait/notify 而不是死循环轮询?
- 学完本课,接着读《Java 核心技术 36 讲》和《深入拆解 JVM》,把 Java 往深里挖。
五、学完自测
- 能用面向对象写一个「超市系统」
- 能说出集合框架的常用类及底层
- 能写出 try-catch-finally 并处理资源
- 能写出一个多线程「聊天室」
- 能解释 synchronized 和 volatile 的区别
配套:这门课讲得细但节奏慢,建议 1.5 倍速 + 重点做「超市系统」「聊天室」两个项目。