`

多线程-继承Thread类

阅读更多
/*
进程:是一个正在执行中的程序
每一个进程执行都有一个执行顺序,该顺序是一个执行路径,或者一个控制单元
线程:就是进程中的一个独立的控制单元,线程在控制着进程的执行

一个进程中至少有一个线程

Java VM 启动的时候会有一个进程java.exe
该进程中至少有一个线程负责java程序的执行
而且这个线程运行的代码存在于main方法中
该线程称为主线程

1.如何自定义一个线程?
通过对api的查找,java已经提供了对线程的描述,Thread类

创建线程的第一种方式:继承Thread类
步骤:
1,定义类继承Thread
2,复写Thread类中的run方法
3,调用线程的start方法,该方法有两个作用:启动线程和调用run方法

运行结果每一次都不同,因为多个线程都在获取CPU的执行权
CPU执行到谁,谁就运行,明确一点,在某一时刻只能有一个程序
在运行(多核除外)
CPU在做着快速的切换,以达到看上去是同时运行的效果。
我们可以形象把多线程的运行行为在互相抢夺CPU执行权

这就是多线程的一个特性:随机性,谁抢到谁执行,运行时间由CPU控制。

为什么要覆盖run方法?
Thread类用于描述线程。该类就定义了一个功能,用于存储线程要运行的代码。
该存储功能就是run方法。
也就是说Thread类中的run方法是用于存储线程要运行的代码。

复写Thread类中的run方法
目的:将自定义代码存储在run方法中,让线程运行

d.start()//开启线程并执行该线程的run方法
d.run();//仅仅是对象调用方法,而线程创建了,并没有运行

*/

class Demo extends Thread{
	public void run(){
		System.out.println("Demo run");
	}
}

class ThreadDemo{
	public static void main(String[] args){
		Demo d = new Demo();//创建好一个线程
		//d.start();
                  d.run()
		for(int x=0;x<60;x++)
			System.out.println("Hello "+x);
	}
}
  • 大小: 142.5 KB
  • 大小: 25.8 KB
0
0
分享到:
评论

相关推荐

    03.多线程编程基础-使用多线程-继承Thread类.mp4

    在学习Java过程中,自己收集了很多的Java的学习资料,分享给大家,有需要的欢迎下载,希望对大家有用,一起学习,一起进步。

    基于JAVA的多线程实现方法-继承Thread类

    基于JAVA的多线程实现方法-继承Thread类,将需要实现多线程的类声明为继承Thread类,覆盖其run()方法,并将线程体放在该方法里。

    Java多线程-创建多线程的基本方式一:继承Thread类

    【Java多线程-创建多线程的基本方式一:继承Thread类】 在Java编程中,多线程是一种并发执行任务的机制,它允许多个任务在同一时间运行,从而提高程序的效率和响应速度。Java提供了多种创建多线程的方式,其中最...

    继承Thread类构造多线程实例

    这里我们将深入探讨标题所提及的“继承Thread类构造多线程实例”的方法。 1. **线程基础**: - **线程**是程序中的执行单元,每个线程都有自己的程序计数器、系统栈、局部变量等资源,它们共享同一块内存区域,即...

    多线程-day01.docx

    1. 继承 `Thread` 类:创建一个新的类继承自 `Thread`,重写 `run()` 方法。然后在主程序中创建该类的实例并调用 `start()` 方法启动线程。 2. 实现 `Runnable` 接口:创建一个类实现 `Runnable` 接口,定义 `run()...

    WHUT-java多线程实验-第一周-继承、多态.zip

    4. Java多线程:Java提供了丰富的API来支持多线程编程,包括Thread类和Runnable接口。学生可能需要创建并启动多个线程,实现并发执行。同时,理解线程同步的概念也非常重要,例如synchronized关键字、wait/notify...

    多线程-VB.net开发实例_vb.net多线程_

    3. **创建线程**:在VB.NET中,可以通过继承`Thread`类或者实现`System.Threading.ThreadStart`委托来创建新线程。在本实例中,可能使用了`New Thread(AddressOf Method)`的方式来创建线程,其中`AddressOf`关键字...

    Java多线程-创建多线程的基本方式二:实现Runnable接口

    本文将详细讲解如何通过实现`Runnable`接口创建多线程,以及这种方式相较于继承`Thread`类的优势。 一、实现Runnable接口创建多线程 1. **步骤** 当一个类需要继承其他类而不能直接继承`Thread`类时,可以选择...

    qt object多线程- 串口通信

    本篇文章将深入探讨如何在Qt中利用对象的继承方式实现多线程来处理串口通信任务。 首先,我们要理解Qt中的多线程。在C++中,线程是程序执行的最小单位,多线程可以让我们同时执行多个任务,提高程序的运行效率。Qt...

    Mihoks#Java-Concurrent-Notes#2-2-继承Thread类原理1

    * Thread类中的run方法内部的任务并不是我们所需要的,既然thread类已经定义了线程任务的位置只要重写run方法定义任务的代码即可.* 多线程执行时,

    Java多线程--让主线程等待所有子线程执行完毕

    为了解决上述问题,可以设计一个自定义的线程类,例如`ImportThread`,继承自`java.lang.Thread`。在这个类中,可以通过维护一个静态的`List&lt;Thread&gt;`集合来跟踪所有正在运行的子线程。当一个新线程启动时,它会将...

    Java多线程-多线程知识点总结和企业真题

    1. **继承Thread类**: - **步骤**: 1. 创建一个继承自`Thread`类的子类。 2. 重写`Thread`类中的`run()`方法,将线程要执行的操作声明在该方法内。 3. 创建`Thread`子类的对象。 4. 通过对象调用`start()`...

    JAVA100例之实例60 继承Thread实现多线程

    在本实例"JAVA100例之实例60 继承Thread实现多线程"中,我们将探讨如何通过继承Java内置的`Thread`类来创建并运行多个线程。 首先,让我们理解什么是线程。线程是程序中的执行流,每个线程都有自己的程序计数器、栈...

    多线程+售票案例.docx

    多线程可以通过继承 Thread 类或实现 Runnable 接口来创建。在这里,我们将介绍继承 Thread 类的方式。 继承 Thread 类 ---------------- 继承 Thread 类是一种简单的多线程创建方式。只需要创建一个新的类,继承 ...

    Java多线程-线程的安全问题与线程的同步机制介绍

    也可以通过继承Thread类来解决线程安全问题。例如,在售票的例子中,可以将票的数量定义在Thread类的子类中,然后在run方法中对票的数量进行操作。 线程安全问题是多线程编程中一个非常重要的问题,需要我们认真...

    Thread实现多线程

    继承Thread类: 1必须重写run 方法:里面放置的实际的线程体 2 启动线程: 3创建Thread对象 4调用Thread对象的start 方法启动线程

    Java多线程-对比创建多线程的两种方式

    Java多线程编程中,创建线程主要有两种方式:继承`Thread`类和实现`Runnable`接口。这两种方式虽然都能实现多线程,但它们在实际应用中有着不同的特性和适用场景。 首先,我们来看看继承`Thread`类的方式。这种方式...

    多线程-Qt-思维导图-学习笔记

    继承 QObject 类创建线程更加灵活,可以通过 moveToThread() 方法将 QObject 类移至一个线程中执行。在此方式中,可以有多个耗时操作方法作为槽函数,由主线程调用。应用实例中,通过继承 QObject 类创建线程,并在 ...

    彻底明白Java的多线程-线程间的通信.doc

    1. **继承Thread类**: 当一个类继承`Thread`,它就成为一个线程类。需要覆盖`run()`方法,并将需要并行执行的任务放入其中。启动线程时,我们调用`start()`而不是`run()`。`start()`方法会创建一个新的执行上下文...

    在Qt(C++)中使用QThread实现多线程 - 星夜之夏 - 博客园1

    在Qt(C++)环境中,实现多线程通常涉及到QThread类,它是Qt库中用于线程管理的组件。QThread使得在C++程序中处理并发任务变得简单,特别是对于那些需要保持用户界面响应性的应用,它允许我们将耗时的任务(如大量...

Global site tag (gtag.js) - Google Analytics