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

Posted Wu培培

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java之多线程方式一(继承Thread类)相关的知识,希望对你有一定的参考价值。



/**
* 多线程的创建,方式一:继承于Thread类
* 1. 创建一个继承于Thread类的子类
* 2. 重写Thread类的run() --> 将此线程执行的操作声明在run()中
* 3. 创建Thread类的子类的对象
* 4. 通过此对象调用start()
* <p>
* 例子:遍历100以内的所有的偶数
*
*/

//1. 创建一个继承于Thread类的子类
class MyThread extends Thread {
//2. 重写Thread类的run()
@Override
public void run() {
for (int i = 0; i < 100; i++) {
if(i % 2 == 0){
System.out.println(Thread.currentThread().getName() + ":" + i);
}
}
}
}


public class ThreadTest {
public static void main(String[] args) {
//3. 创建Thread类的子类的对象
MyThread t1 = new MyThread();

//4.通过此对象调用start():①启动当前线程 ② 调用当前线程的run()
t1.start();
//问题一:我们不能通过直接调用run()的方式启动线程。
// t1.run();

//问题二:再启动一个线程,遍历100以内的偶数。不可以还让已经start()的线程去执行。会报IllegalThreadStateException
// t1.start();
//我们需要重新创建一个线程的对象
MyThread t2 = new MyThread();
t2.start();


//如下操作仍然是在main线程中执行的。
for (int i = 0; i < 100; i++) {
if(i % 2 == 0){
System.out.println(Thread.currentThread().getName() + ":" + i + "***********main()************");
}
}
}

}

以上是关于Java之多线程方式一(继承Thread类)的主要内容,如果未能解决你的问题,请参考以下文章

java之多线程

java基础之多线程二:多线程实现方式

Java之多线程窗口卖票问题(Thread)

并发编程之多线程基础-Thread和Runnable的区别及联系

Java之多线程方式二(实现Runnable接口)

Java复习 之多线程