1 package com.bytezero.thread;
2
3 /**
4 * 多线程的创建,方式一:继承于Thread类
5 * 1.创建一个继承于Thread类的子类
6 * 2.重写Thread类的run()方法 -->将此线程执行的操作声明在tun()中
7 * 3.创建Thread类的子类对象
8 * 4.通过此对象调用start()
9 *
10 * 例子:遍历100以内的所有偶数
11 * @author Bytezero1·zhenglei! Email:420498246@qq.com
12 * create 2021-10-15 10:13
13 */
14
15
16 //1.创建一个继承于Thread类的子类
17 class MyThread extends Thread{
18 //2.重写Thread类的run()方法
19 @Override
20 public void run() {
21 for (int i = 0; i <=100 ; i++) {
22 if(i % 2 ==0){
23 System.out.println(Thread.currentThread().getName()+":"+i);
24 }
25 }
26 }
27 }
28
29
30 public class ThreadTest {
31 public static void main(String[] args) {
32 //3.创建Thread类的子类对象
33 MyThread t1 = new MyThread();
34
35 //4.通过此对象调用start():①启动当前线程 ②调用当前线程的run()
36 t1.start(); //Thread-0
37 //问题一:我们不能通过直接调用run()的方式启动线程
38 // t1.run(); //不是线程 只是 调用了方法
39
40 //问题二:再启动线程,遍历100以内的偶数,不可以还让已经start()的线程去执行.会报
41 //IllegalThreadStateException异常
42 //t1.start(); //不可以
43
44 //需要重新创建一个线程的对象
45 MyThread t2 = new MyThread();
46 t2.start(); //Thread-1
47
48
49
50 //如下操作仍然在main线程中执行的
51 for (int i = 0; i <=100 ; i++) {
52 if(i % 2 != 0){
53
54 System.out.println(Thread.currentThread().getName()+":"+i+"********");
55 }
56 }
57
58
59 }
60
61
62 }

..........................

Java 多线程------多线程的创建,方式一:继承于Thread类的更多相关文章

  1. Java多线程——线程的创建方式

    Java多线程——线程的创建方式 摘要:本文主要学习了线程的创建方式,线程的常用属性和方法,以及线程的几个基本状态. 部分内容来自以下博客: https://www.cnblogs.com/dolph ...

  2. Java:多线程概述与创建方式

    目录 Java:多线程概述与创建方式 进程和线程 并发与并行 多线程的优势 线程的创建和启动 继承Thread类 start()和run() 实现Runnable接口 实现Callable接口 创建方 ...

  3. 面试官:小伙子,说一说Java多线程有哪些创建方式吧

    第一种 继承Thread类 自定义类,继承Thread类,并重写run()方法. class MyThread1 extends Thread { @Override public void run( ...

  4. 多线程-2.线程创建方式和Thread类

    线程的创建方式 1.继承Thread类,重写run方法,示例如下: 1 class PrimeThread extends Thread { 2 long minPrime; 3 PrimeThrea ...

  5. Java学习笔记44(多线程一:Thread类)

    多线程的概念:略 多线程的目的:提高效率 主线程: package demo; //主线程 public class Demo { public static void main(String[] a ...

  6. 【多线程】线程创建方式三:实现callable接口

    线程创建方式三:实现callable接口 代码示例: import org.apache.commons.io.FileUtils; import java.io.File; import java. ...

  7. Java线程的实现/创建方式

    1.继承Thread类: Thread 类本质上是实现了 Runnable 接口的一个实例,代表一个线程的实例. 启动线程的唯一方法就是通过 Thread 类的 start()实例方法. start( ...

  8. java 两种进程创建方式比较

    A extends Thread: 简单 不能再继承其他类了(Java单继承) 同份资源不共享 A implements Runnable:(推荐) 多个线程共享一个目标资源,适合多线程处理同一份资源 ...

  9. Java——四种线程创建方式

    java中创建线程有四种方式,分别是:继承Thread类,重写run方法,然后创建线程对象并调用start方法.实现Runnable接口,实现run方法,然后创建线程对象并传入Runnable实例,再 ...

  10. 【Java】线程的创建方式

    1.继承Thread类方式 这种方式适用于执行特定任务,并且需要获取处理后的数据的场景. 举例:一个用于累加数组内数据的和的线程. public class AdditionThread extend ...

随机推荐

  1. 在ECS中安装Docker在内部访问RDS数据库

    Navicat连接阿里云RDS数据库入门 https://blog.csdn.net/fenxunkao0106/article/details/106594276 https://www.cnblo ...

  2. C/C++ 通过Socket 传输结构体

    本质上socket无法传输结构体,我们只有将结构体装换为字节数组,或者是字符串格式来传输,到了服务端在强制类型转换一下即可,下面的代码分别提供原生写法与通过boost的实现两种,直接改改,可用于收集目 ...

  3. MakeFile文件的使用 [补档-2023-07-13]

    makefile-gdb文件 ​ 可以在文件中指定那些文件可以先进行编译,那些文件可以后进行编译,那些文件可以重新编译.他可以自动化编译程序.... 6-1 makefile基本规则 ​ 如下: ​ ...

  4. 宝塔 websocket连接wss配置

    https要使用wss连接,wss://xxxxx.com/wss 就转发到了 服务器内的127.0.0.1:2346服务. 具体转发可以放在 文件配置或者 伪静态里面 建议放在伪静态里面容易管理 n ...

  5. ASP.NET Core分布式项目实战(Identity Server 4回顾,Consent 实现思路介绍)--学习笔记

    任务17:Identity Server 4回顾 上一节我们中间留了一部分,登录之后的 RequireConsent,就是用户授权这一步没有做,直接跳过,这种情况可以理解为我们自己比较信任的客户端,这 ...

  6. MySQL系列文章汇总

    MySQL系列文章汇总: 导读: 大家好,我是xbhog,MySQL还是到了单独开一个系列了,这样不管是对我还是对读者来说在查找的时候都会方便一些: 话不多说,来看下,该系列会持续更新的(还是看学到哪 ...

  7. CF739A Alyona and mex 题解

    题目传送门 前置知识 贪心 | 构造 解法 从贪心的角度分析,最小的 \(\operatorname{mex}\) 仅会与长度最小的区间有关:另外为使得 \(\operatorname{mex}\) ...

  8. JS leetcode 两数之和解答思路分析

    壹 ❀ 引 在学习算法基础的同时,我还是继续捡起leetcode的算法题了,珍惜时间,算法每天进步一点点.不得不说,在了解了一些算法概念后,至少有些答案是能看懂了......(惭愧)虽然我很菜,但是多 ...

  9. NC16886 [NOI2001]炮兵阵地

    题目链接 题目 题目描述 司令部的将军们打算在N*M的网格地图上部署他们的炮兵部队.一个N*M的地图由N行M列组成,地图的每一格可能是山地(用"H" 表示),也可能是平原(用&qu ...

  10. JavaScript选择器

    Js选择器 JS选择器常用的有getElementById().getElementsByClassName().getElementsByName().getElementsByTagName(). ...