03_线程的创建和启动_实现Runnable接口方式

【线程的创建和启动的步骤(实现Runnable接口方式)】

1.定义Runnable接口的实现类,并重写其中的run方法。run()方法的方法体是线程执行体。class SonThread  implement Runnable{ public void run(){......}}

2.创建Runnable接口实现类的实例。   sonThread s1=new SonThread();

3.用该实例作为Thread的target来创建Thread对象。   Thread t1 =new Thread(s1);

4.调用该对象的start()方法启动线程。  t1.start();

【示例代码】

package com.Higgin.part01;

//1.1定义Runnable接口的实现类
class SecondThread implements Runnable{

    //1.2重写其中的run方法
    @Override
    public void run() {
        for(int i=0;i<10;i++){
            System.out.println(Thread.currentThread().getName()+"===="+i);
        }
    }

}
public class Demo2 {

    public static void main(String[] args) {
        //2.创建Runnable的接口实现类的实例
        SecondThread s1=new SecondThread();
        SecondThread s2=new SecondThread();
        //2.用Runnable的接口实现类的实例作为Thread的target,创建Thread对象
        Thread t1=new Thread(s1);
        Thread t2=new Thread(s2,"Higgin");  //创建Thread对象的同时可以为之命名

        //启动线程
        t1.start();
        t2.start();

        for(int i=0;i<10;i++){
            System.out.println(Thread.currentThread().getName()+"===="+i);
        }
    }
}

【运行结果】

【注意一:关于命名】

在创建Thread 对象的时候可以为该Thread对象指定一个名字

【注意二:Thread的构造方法】

Runnable对象作为Thread对象的target,Runnable实现类里面包含run方法仅仅作为执行体。也就是说Thread类的作用是把run方法包装成线程的执行体。

实际运行的线程对象依然是Thread实例,只是该Thread线程负责执行其target的run方法。

时间: 2024-08-08 21:54:18

03_线程的创建和启动_实现Runnable接口方式的相关文章

02_线程的创建和启动_继承Thread方式

[简述] java使用Thread类代表线程,所有的线程都必须是Thread或者其子类的实例. 每个线程的任务就是完成一定的任务,实际上就是执行一段程序流. [创建并启动多线程的步骤(集成Thread类方式)] 1.定义继承Thread类的子类,重写run方法:run()方法就代表了线程需要完成的任务,故run()方法称为:线程执行体. 2.创建线程对象:即创建Thread子类的实例. 3.启动线程:调用线程对象的start()方法来. [示例代码FirstThread.java] packag

Java线程:创建与启动

Java线程:创建与启动 一.定义线程 1.扩展java.lang.Thread类. 此类中有个run()方法,应该注意其用法: public void run() 如果该线程是使用独立的 Runnable 运行对象构造的,则调用该 Runnable 对象的 run 方法:否则,该方法不执行任何操作并返回.   Thread 的子类应该重写该方法. 2.实现java.lang.Runnable接口. void run() 使用实现接口 Runnable 的对象创建一个线程时,启动该线程将导致在独

Java语言基础-多线程-①线程的创建和启动

简单阐释进程和线程 对于进程最直观的感受应该就是“windows任务管理器”中的进程管理: (计算机原理课上的记忆已经快要模糊了,简单理解一下):一个进程就是一个“执行中的程序”,是程序在计算机上的一次运行活动.程序要运行,系统就在内存中为该程序分配一块独立的内存空间,载入程序代码和资源进行执行.程序运行期间该内存空间不能被其他进程直接访问.系统以进程为基本单位进行系统资源的调度和分配.何为线程?线程是进程内一次具体的执行任务.程序的执行具体是通过线程来完成的,所以一个进程中至少有一个线程.回忆

多线程--线程的创建与启动

创建一个线程,Java提供三种方法 (1)通过实现Runnable接口,重写run方法 (2)通过继承Thread类本身,--必须重写 (3)通过Callable和Future创建线程 Thread类的方法 void start()使该线程开始执行,Java虚拟机调用该线程的run方法. final void setName(String name)改变线程名称,使之与参数name相同 setPriority(int priority)更改线程的优先级 join(long millisec)等待

Java线程示例 - 继承Thread类和实现Runnable接口

进程(Process)和线程(Thread)是程序运行的两个基本单元.Java并发编程更多的是和线程相关. 进程 进程是一个独立的执行单元,可将其视为一个程序或应用.然而,一个程序内部同事还包含多个进程.Java运行时环境就是一个单独的进程,在它内部还包含了作为进程的各种类和程序. 线程 可以将线程看做轻量级的进程.线程存在于进程当中,需要的资源开销较小.同一进程中的线程共享进程的资源. Java多线程 每一个Java引用都只要有一个线程 - 主线程(main thread).虽然后台还运行着许

第二十七节(多线程、线程的创建和启动、生命周期、调度、控制、同步)

线程指进程中的一个执行场景,也就是执行流程,那么进程和线程的区别是什么 1. 每个进程是一个应用程序,都有独立的内存空间 2. 同一个进程中的线程共享其进程中的内存和资源 (共享的内存是堆内存和方法区内存,栈内存不共享,每个线程有自己的) 什么是进程? 一个进程对应一个应用程序. 例如:在 windows 操作系统启动 Word 就表示启动了一个进程.在 java 的开发环境下启动 JVM, 就表示启动了一个进程.现代的计算机都是支持多进程的,在同一个操作系统中,可以同时启动多个进程. /* 分

Java并发编程之线程创建和启动(Thread、Runnable、Callable和Future)

这一系列的文章暂不涉及Java多线程开发中的底层原理以及JMM.JVM部分的解析(将另文总结),主要关注实际编码中Java并发编程的核心知识点和应知应会部分. 说在前面,Java并发编程的实质,是线程对象调用start方法启动多线程,而线程对象则必须是Thread类或其子类实现.Runnable和Callable的作用类似于Comparable.Serializable,是用于被并发的类实现的接口,从而使得Thread类可以在初始化时传入这个被并发的类.此是大前提.本文从多线程实现和启动出发,对

01_线程的创建和启动

1.线程的使用步骤 2.第一种定义线程类的方法:继承java.lang.Thread类 MyThread 文件: public class MyThread extends Thread { private int count=0; @Override public void run() { System.out.println("线程已启动"); while(count<10000) { count++; } System.out.println("count:&qu

Java 线程启动(实现Runnable接口)

程序如下: class ThreadDemo1 implements Runnable{//实现Runnable接口 private String name; private int time; public ThreadDemo1(String name,int time){ this.name=name; this.time=time; } public void run() {//覆写run方法 try { Thread.sleep(this.time); } catch (Interru