Java第11周博客学习总结——多线程基础入门

Java第11周补课学习总结——多线程基础入门

一、本周学习概述

本周 Java 补课主要补学多线程核心基础知识。多线程是 Java 高级语法中非常重要的一章,也是后续学习网络编程、并发编程、项目性能优化的基础。之前课堂内容掌握不够扎实,通过本次补课,我系统梳理了线程概念、线程创建方式、线程生命周期以及简单的线程安全问题,补齐了知识漏洞。

二、核心知识点总结

1. 进程与线程的区别

进程是操作系统资源分配的最小单位,每运行一个程序就是一个进程。
线程是进程内部的执行单元,是 CPU 调度的最小单位。

简单理解:

  • 一个程序 = 一个进程
  • 一个进程可以包含多条线程
  • 多线程可以让程序同时干多件事,提高执行效率

2. Java 线程的两种创建方式

(1)继承 Thread 类

步骤:

  1. 自定义类继承 Thread
  2. 重写 run () 方法(线程任务)
  3. 创建对象,调用 start () 启动线程

特点:写法简单,但不能再继承其他类,有单继承局限。

(2)实现 Runnable 接口(推荐)

步骤:

  1. 自定义类实现 Runnable 接口
  2. 重写 run ()
  3. 交给 Thread 包装并 start ()

优点:

  • 避免单继承限制
  • 适合资源共享场景
  • 代码和线程实现分离,更规范

3. 线程的五种生命周期状态

  1. 新建状态:new 出来,还没启动
  2. 就绪状态:调用 start (),等待 CPU 调度
  3. 运行状态:CPU 正在执行 run 方法
  4. 阻塞状态:sleep、等待锁、等待资源,暂停执行
  5. 死亡状态:任务执行完毕或线程终止

通过补课我理解了:线程不能人为控制运行顺序,由系统 CPU 随机调度

4. 常用线程方法

  • start():启动线程
  • run():线程真正执行的任务
  • sleep(毫秒):让线程休眠,进入阻塞
  • currentThread():获取当前正在运行的线程
  • getName() / setName():获取、设置线程名

5. 线程安全问题(入门理解)

多个线程同时操作同一个共享资源时,会出现数据错乱、数据覆盖问题,这就是线程不安全。

课堂补课中了解到,后续可以通过 synchronized 同步锁解决资源争抢问题,保证数据一致性。

三、本次补课收获与不足

收获

  1. 终于分清进程、线程的底层区别,不再混淆概念。
  2. 熟练掌握两种线程创建方式,知道什么时候用继承、什么时候用接口。
  3. 理解了多线程 “并发执行” 的原理,明白了为什么程序运行结果每次不一样。
  4. 初步认识线程安全问题,为后续并发编程打好基础。

不足

  1. 对线程状态切换逻辑还不够熟练。
  2. 同步锁原理只是入门,还需要多写代码练习。
  3. 多线程代码调试能力较弱,容易看不懂执行顺序。

四、后续学习计划

  1. 多加练习线程代码,熟练手写两种创建方式。
  2. 重点攻克线程安全、同步代码块、同步方法
  3. 整理多线程错题,巩固第 11 周补课内容。
  4. 预习线程通信、线程池,为期末复习提前铺垫。

五、总结

第 11 周补课让我补齐了多线程基础短板。多线程是 Java 从基础语法走向高级编程的重要转折点,看似简单,但底层调度、安全问题非常关键。接下来我会持续刷题、敲代码,彻底吃透本章内容,为后续课程和项目开发打下扎实基础。

posted @ 2026-06-21 21:48  张一威  阅读(3)  评论(0)    收藏  举报