一.多线程第一种方式的实现步骤(继承Thread类)

  代码演示:

    1.定义MyThread类,继承Thread类

    2.重写了里面的run方法,在run方法中定义线程要执行的任务

public class MyThread extends Thread{
@Override
public void run() { //run方法内是子线程要执行的代码
for(int i = 1; i <= 100; i++) {
System.out.println("HelloJava:" + i);
}
}
}

    3.创建Thread子类对象

    4.调用子类对象的start方法,启动线程

public class Demo01Thread {
public static void main(String[] args) {
System.out.println("main...start");
//创建Thread子类对象
MyThread mt = new MyThread();
//调用start方法启动线程
mt.start(); System.out.println("main....end");
}
}

    上面两块代码,会开启子线程,并运行子线程中的run方法

二.Thread中的常见方法:  

  构造方法:  

    public Thread(String name): 传递一个线程的名字

  成员方法:

    void setName(String name): 给线程设置名字

    String getName(): 获取线程的名字

    (重要) static Thread currentThread(): 获取当前正在运行的线程

    (重要) static void sleep(long mills): 线程休眠,参数为休眠的时间,单位是毫秒

  代码演示部分Thread方法:

    1.创建MyThreadMethod类继承Thread类,并重写内部run方法

public class MyThreadMethod extends Thread{
public MyThreadMethod() {} public MyThreadMethod(String name) {
super(name); //调用父类一个参数是字符串的构造方法,将线程名字进行传递。
} //在run方法中定义线程要执行的任务
@Override
public void run() {
//setName("旺财");
System.out.println("新线程执行了");
//MyThreadMethod 是Thread的子类,所以在这个方法中能够直接调用getName获取线程的名字。
System.out.println("新线程的名字是:" + getName());
}
}

    2.演示方法currentThread方法和getName方法

public class Demo02ThreadMethod {
public static void main(String[] args) {
//创建Thread子类对象,并且运行这个线程
MyThreadMethod mtm = new MyThreadMethod("如花"); //mtm.setName("狗蛋"); mtm.start(); //获取main线程的名字
//获取当前正在运行的线程对象,再通过这个线程对象调用getName方法,获取线程名字
//这个currentThread方法是由哪个线程执行的,那么获取到的就是哪个线程对象。
Thread t = Thread.currentThread();
System.out.println("main线程的名字是:" + t.getName()); }
}

  上面代码运行结果是:

    新线程执行了
    新线程的名字是:如花
    main线程的名字是:main

    

    

多线程之 Thread类的更多相关文章

  1. (转)多线程——继承Thread 类和实现Runnable 接口的区别

    java中我们想要实现多线程常用的有两种方法,继承Thread 类和实现Runnable 接口,有经验的程序员都会选择实现Runnable接口 ,其主要原因有以下两点: 首先,java只能单继承,因此 ...

  2. 多线程:Thread类的Join()方法

    多线程:Thread类的Join()方法 http://blog.163.com/hc_ranxu/blog/static/3672318220095284513678/ 当我们在线程B中调用Thre ...

  3. Java多线程01(Thread类、线程创建、线程池)

    Java多线程(Thread类.线程创建.线程池) 第一章 多线程 1.1 多线程介绍 1.1.1 基本概念 进程:进程指正在运行的程序.确切的来说,当一个程序进入内存运行,即变成一个进程,进程是处于 ...

  4. Java中实现多线程继承Thread类与实现Runnable接口的区别

    Java中线程的创建有两种方式: 1.  通过继承Thread类,重写Thread的run()方法,将线程运行的逻辑放在其中 2.  通过实现Runnable接口,实例化Thread类 在实际应用中, ...

  5. 多线程——继承Thread类实现一个多线程

    继承Thread类实现一个多线程 Thread类部分源码: package java.lang; //该类实现了Runnable接口 public class Thread implements Ru ...

  6. Java 多线程 (Thread 类)

    1.多线程 2.卖票 1.多线程实现 两种方式可以实现多线程: 继承 Thread 类,重写 run 方法:定义对象,调用 start 方法 创建类实现 Runnable 接口,作为实参传递给 thr ...

  7. Java 多线程之 Thread 类 和 Runnable 接口初步使用

    目录 Thread 类 Thread之定义线程类 Thread之开启线程 Runnable 接口 Runnable 之定义线程类 Runnable 之开启线程 @ Thread 类 Thread 类是 ...

  8. 多线程, Thread类,Runnable接口

    多线程 线程:线程是进程中的一个执行单元,负责当前进程中程序的执行,一个进程中至少有一个线程.一个进程中是可以有多个线程的,这个应用程序也可以称之为多线程程序. 单线程程序:即,若有多个任务只能依次执 ...

  9. java多线程技能-使用多线程-继承Thread类

    /* 使用多线程可通过继承Thread类或实现Runnable接口. Thread和Runnable的关系:public class Thread implements Runnable. 使用thr ...

随机推荐

  1. 移动namenode、secondarynamenode和jobTracker的节点(使其成为独立节点)

    https://blog.csdn.net/zwx19921215/article/details/22528097

  2. 关于matplotlib绘制直方图偏移的问题

    在使用pyplot绘制直方图的时候我发现了一个问题,在给函数.hist()传参的时候,如果传入的组数不是刚刚好(就是说这个组数如果是使用(最大值-最小值)/组距计算出来,而这个数字不是整除得来而是取整 ...

  3. C# 启动外部进程

    C# 启动外部进程: var processInfo = new ProcessStartInfo(fullName); processInfo.UseShellExecute = false; pr ...

  4. UVA12206 Stammering Aliens

    思路 可以二分答案+哈希 判断有没有那个长为L的串出现至少m次即可 代码 #include <cstdio> #include <cstring> #include <a ...

  5. idea使用的小技巧总结

    1.需要一个快捷清爽的控制台? 下面这段配置是你需要的,在workspace.xml里面添加 <component name="RunDashboard"> <o ...

  6. Unity外包 UE4外包 项目案例平台开通通知

    长年承接Unity外包 UE4外包,大家好,本公司团队已将案例上传至专门的案例官网. 欢迎联系我们索取,谢谢! 有项目外包请联系QQ:372900288 索取案例.

  7. contenOs7编码问题

  8. 基于三层架构项目下的Ado【六】

    一.基于三层架构项目下的Ado增删改查总结,提示:现在一般都是使用EF框架操作. 1. 先在model层创建出一个和你将会查询出一样类型的表,比如你将查询出的有五个字段,那么你就需要创建出一个和你查询 ...

  9. Jmeter转换成中文模式

    本片文章转至:https://blog.csdn.net/him2014/article/details/79603887 下载安装好Jmeter后默认的是英文,对于我这种学渣来说简直就是受到了100 ...

  10. 批处理脚本+adb命令

    app的测试过程中,有一些重复性的繁琐工作,可以采用用批处理脚本+adb命令方式来代替 说明: (1)等待时间我用的ping命令替代的,比较简单直观 (2)我采取的是用坐标定位,后续会使用控件来定位 ...