java基础知识回顾之java Thread类--java线程实现常见的两种方式实现Runnable接口(二)
创建线程的第二中方式:
/**
*
步骤:
1定义类实现Runnable接口
2.实现Runnable接口中的run方法。
3.通过Thread类建立线程对象,并将Runnable 接口的子类对象作为实际参数传给Thread类的构造方法、
4.调用Thread类的start方法开启线程,并调用Runnable接口子类的run方法
为什么要将Runnable接口子类的对象传递给Thread类的构造方法?
因为线程的任务(要运行的代码)都封装在Runnable接口的子类对象的run方法中,所以在线程对象创建的时候就必须明确要运行的任务。
*
*/
package com.lp.ecjtu.Thread; public class HelloRunnableThread implements Runnable{ private String name; public String getName() { return name; } public void setName(String name) { this.name = name; } public HelloRunnableThread(String name){ this.name = name; } @Override public void run() { for(int i=0;i<=100;i++){ System.out.println(name+"运行"+i); } } public static void main(String[] args){ HelloRunnableThread h1 = new HelloRunnableThread("A"); HelloRunnableThread h2 = new HelloRunnableThread("B"); Thread t1 = new Thread(h1);//h1为传入线程构造方法的接口 Thread t2 = new Thread(h2); System.out.println("线程启动之前---》"+t1.isAlive());//测试线程是否处于活动状态 t1.start();//开启线程,进入可运行状态 System.out.println("线程启动之后---》"+t1.isAlive()); t2.start(); } }
输出:
线程启动之前---》false
线程启动之后---》true
A运行0
B运行0
B运行1
B运行2
B运行3
B运行4
B运行5
B运行6
B运行7
B运行8
B运行9
B运行10
B运行11
B运行12
B运行13
A运行1
B运行14
A运行2
B运行15
Face your past without regret. Handle your present with confidence.Prepare for future without fear. keep the faith and drop the fear.
面对过去无怨无悔,把握现在充满信心,备战未来无所畏惧。保持信念,克服恐惧!一点一滴的积累,一点一滴的沉淀,学技术需要不断的积淀!