零基础学 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 文字小工具等

三、必须吃透的核心知识点

  1. 面向对象三大特性(模块 2):封装(隐藏细节)、继承(复用代码)、多态(同一接口不同实现)。Java 的灵魂。

  2. 集合框架(模块 4):List(有序)、Set(去重)、Map(键值)。ArrayList vs LinkedList、HashMap 的原理——这些是面试高频。

  3. 异常体系(模块 3):受检异常 vs 运行时异常。try-with-resources 自动关流。

  4. 多线程(模块 7,Java 进阶的关键):synchronized、wait/notify、volatile、concurrent 包。生产者消费者模型是并发编程的「Hello World」级经典。

  5. 「超市系统」和「聊天室」两个项目:一个练 OOP,一个练网络 + 多线程——把前面所有知识串起来。


四、引发思考

  1. 抽象类和接口的区别?什么时候用接口、什么时候用抽象类?
  2. == 和 equals() 的区别?为什么字符串比较常出 bug?
  3. ArrayList 和 LinkedList 底层分别是什么?各自适合什么场景?
  4. volatile 和 synchronized 的区别?volatile 能替代锁吗?
  5. 生产者消费者模型为什么要用 wait/notify 而不是死循环轮询?
  6. 学完本课,接着读《Java 核心技术 36 讲》和《深入拆解 JVM》,把 Java 往深里挖。

五、学完自测

  • 能用面向对象写一个「超市系统」
  • 能说出集合框架的常用类及底层
  • 能写出 try-catch-finally 并处理资源
  • 能写出一个多线程「聊天室」
  • 能解释 synchronized 和 volatile 的区别

配套:这门课讲得细但节奏慢,建议 1.5 倍速 + 重点做「超市系统」「聊天室」两个项目。