1. 1 package multithread;
  2. 2
  3. 3 /*
  4. 4 * 如何创建一个线程呢?
  5. 5 *
  6. 6 * 创建线程方式一:继承Thread类。
  7. 7 *
  8. 8 * 步骤:
  9. 9 * 1,定义一个类继承Thread类。
  10. 10 * 2,覆盖Thread类中的run方法。
  11. 11 * 3,直接创建Thread类的子类对象创建线程。
  12. 12 * 4,调用start方法开启线程并调用线程的任务run方法执行
  13. 13 */
  14. 14
  15. 15 class Demo extends Thread{
  16. 16 private String name;
  17. 17 public Demo(String name) {
  18. 18 // TODO Auto-generated constructor stub
  19. 19 this.name = name;
  20. 20
  21. 21 }
  22. 22 public void run() {
  23. 23 // show();
  24. 24 for (int x = 0; x < 10; x++) {
  25. 25 for (int y = -9999999;y < 999999999; y++) {
  26. 26
  27. 27 }
  28. 28 System.out.println(name+"....x="+x);
  29. 29 }
  30. 30 }
  31. 31 // public void show() {
  32. 32 //
  33. 33 // }
  34. 34 }
  35. 35 public class ThreadDemo2 {
  36. 36
  37. 37 public static void main(String[] args) {
  38. 38 // TODO Auto-generated method stub
  39. 39
  40. 40 /*
  41. 41 * 创建线程的目的是为了开启一条执行路径,去运行指定的代码和其他代码实现同时运行。
  42. 42 *
  43. 43 * 而运行的指定代码就是这个执行路径的任务。
  44. 44 *
  45. 45 * jvm创建的主线程的任务都定义在了主函数中。
  46. 46 *
  47. 47 * 而自定义的线程它的任务在哪?
  48. 48 * Thread类用于描述线程,线程时需要任务的,所以Thread类也有对任务的描述。
  49. 49 * 这个任务就通过Thread类中的run方法来体现。也就是说,run方法就是封装自定义线程运行任务的函数。
  50. 50 *
  51. 51 * run方法中定义就是线程要运行的任务代码。
  52. 52 *
  53. 53 * 开启线程是为了运行指定代码,所以只有继承Thread类,并覆写run方法
  54. 54 * 将运行的代码定义在run方法中即可
  55. 55 */
  56. 56 // Thread t1 = new Thread();
  57. 57 Demo d1 = new Demo("旺财");
  58. 58 Demo d2 = new Demo("xiaoqiang");
  59. 59 d1.start();//开启线程,调用run方法
  60. 60
  61. 61 d2.start();
  62. 62
  63. 63 }
  64. 64 //调用run和调用start有什么区别?
  65. 65
  66. 66 }

ThreadDemo2

多线程创建的方式一(继承Thread类)的更多相关文章

  1. 创建线程的两种方式:继承Thread类和实现Runnable接口

    第一种方式:继承Thread类 步骤:1.定义类继承Thread 2.覆写Threa类的run方法. 自定义代码放在run方法中,让线程运行 3.调用线程的star方法, 该线程有两个作用:启动线程, ...

  2. 创建线程的一般方式和匿名内部类方式对比——继承thread类,重写run()方法

    第一种:继承thread类,重写run()方法 一般方式:Demo01.java /** * 创建线程的第一种方式:继承thread类,重写run()方法 * * @author :liuqi * @ ...

  3. 创建多线程的方式:继承Thread类和实现Runnable接口

    1.通过继承Thread类的方式创建多线程(这里只是简单的代码演示创建多线程的方法) package com.baozi.exer; public class ThreadDemo { public ...

  4. 49、多线程创建的三种方式之继承Thread类

    继承Thread类创建线程 在java里面,开发者可以创建线程,这样在程序执行过程中,如果CPU空闲了,就会执行线程中的内容. 使用Thread创建线程的步骤: 1.自定义一个类,继承java.lan ...

  5. 在java中可有两种方式实现多线程,一种是继承Thread类,一种是实现Runnable接口

    //继承thread类 class PrimeThread extends Thread{ long minPrime; PrimeThread(long minPrime) { this.minPr ...

  6. 如何创建线程第一种继承Thread类

    步骤 1:定义一个类 继承Thread类.2:重写Thread类的run方法.3:直接创建Thread的子类对象创建线程.4:调用start方法开启线程并调用线程的任务run方法执行.-------- ...

  7. 多线程实现的方式一继承Thread

    实现方法一:继承Thread类 package thread; /** * @function 多线程继承Thread类 * @author hj */ public class Threads ex ...

  8. Java之多线程方式一(继承Thread类)

    /** * 多线程的创建,方式一:继承于Thread类 * 1. 创建一个继承于Thread类的子类 * 2. 重写Thread类的run() --> 将此线程执行的操作声明在run()中 * ...

  9. JAVA与多线程开发(线程基础、继承Thread类来定义自己的线程、实现Runnable接口来解决单继承局限性、控制多线程程并发)

    实现线程并发有两种方式:1)继承Thread类:2)实现Runnable接口. 线程基础 1)程序.进程.线程:并行.并发. 2)线程生命周期:创建状态(new一个线程对象).就绪状态(调用该对象的s ...

  10. 多线程之继承Thread类及多线程内存分析

    *创建多线程的一种方式:继承Thread类 * java.lang.Thread是描述多线程的类,要实现多线程程序,一种方式就是继承Thread类 * 1.创建一个类Mythread让其extends ...

随机推荐

  1. CountDownLatch源码阅读

    简介 CountDownLatch是JUC提供的一个线程同步工具,主要功能就是协调多个线程之间的同步,或者说实现线程之间的通信 CountDown,数数字,只能往下数.Latch,门闩.光看名字就能明 ...

  2. 【LeetCode】234. Palindrome Linked List 解题报告(Python)

    作者: 负雪明烛 id: fuxuemingzhu 个人博客: http://fuxuemingzhu.cn/ 目录 题目描述 题目大意 解题方法 日期 题目地址:https://leetcode.c ...

  3. 【LeetCode】643. 子数组最大平均数 I Maximum Average Subarray I (Python)

    作者: 负雪明烛 id: fuxuemingzhu 公众号:每日算法题 目录 题目描述 题目大意 解题方法 方法一:preSum 方法二:滑动窗口 刷题心得 日期 题目地址:https://leetc ...

  4. 【LeetCode】748. Shortest Completing Word 解题报告(Python)

    作者: 负雪明烛 id: fuxuemingzhu 个人博客: http://fuxuemingzhu.cn/ 目录 题目描述 题目大意 解题方法 日期 题目地址:https://leetcode.c ...

  5. 【LeetCode】867. Transpose Matrix 解题报告(Python)

    作者: 负雪明烛 id: fuxuemingzhu 个人博客: http://fuxuemingzhu.cn/ 目录 题目描述 题目大意 解题方法 先构建数组再遍历实现翻转 日期 题目地址:https ...

  6. Intervals(poj1201)

    Intervals Time Limit: 2000MS   Memory Limit: 65536K Total Submissions: 24134   Accepted: 9177 Descri ...

  7. codeforces 624C Graph and String

    C. Graph and String time limit per test 2 seconds memory limit per test 256 megabytes input standard ...

  8. codeforce-424C. Magic Formulas(数学)

    C. Magic Formulas time limit per test:2 seconds     memory limit per test:256 megabytes   input stan ...

  9. TensorFlow.NET机器学习入门【4】采用神经网络处理分类问题

    上一篇文章我们介绍了通过神经网络来处理一个非线性回归的问题,这次我们将采用神经网络来处理一个多元分类的问题. 这次我们解决这样一个问题:输入一个人的身高和体重的数据,程序判断出这个人的身材状况,一共三 ...

  10. Java并发:五种线程安全类型、线程安全的实现、枚举类型

    1. Java中的线程安全 Java线程安全:狭义地认为是多线程之间共享数据的访问. Java语言中各种操作共享的数据有5种类型:不可变.绝对线程安全.相对线程安全.线程兼容.线程独立 ① 不可变 不 ...