继承Thtead与实现Runnable接口
前言
多线程的创建常用继承Thtead类与实现Runnable接口,下面就来展现如何创建接口
一、继承Thread
代码
/*
*继承Thread
*/
public class Text {
public static void main(String[] args) {
//创建线程
MyThread m = new MyThread();
//启动线程
m.start();
for (int i = 0; i < 10; i++) {
System.out.println("上山打老虎"+i);
}
}
}
public class MyThread extends Thread {
@Override
public void run() {
//这里的代码就是一条新的执行路径
//这个执行路径是触发方式,不是调用run方法,而是通过thread对象的start方法来启动任务
for (int i = 0; i < 10; i++) {
System.out.println("一二三四五"+i);
}
}
}
运行结果
上山打老虎0
上山打老虎1
上山打老虎2
上山打老虎3
一二三四五0
一二三四五1
一二三四五2
一二三四五3
上山打老虎4
上山打老虎5
上山打老虎6
上山打老虎7
上山打老虎8
上山打老虎9
一二三四五4
一二三四五5
一二三四五6
一二三四五7
一二三四五8
一二三四五9
二、实现Runnable接口
代码
/**
* 实现runnable
*/
public class Text {
public static void main(String[] args) {
//1 创建一个任务对象
MyRunnable r = new MyRunnable();
//创建一个线程并给他一个任务
Thread t = new Thread(r);
//启动线程
t.start();
for (int i = 0; i < 10; i++) {
System.out.println("上山打老虎"+i);
}
}
}
public class MyRunnable implements Runnable{
@Override
public void run() {
//线程的任务
for (int i = 0; i < 10; i++) {
System.out.println("一二三四五"+i);
}
}
}
运行结果
一二三四五0
上山打老虎0
一二三四五1
上山打老虎1
一二三四五2
上山打老虎2
一二三四五3
上山打老虎3
一二三四五4
上山打老虎4
一二三四五5
上山打老虎5
一二三四五6
上山打老虎6
一二三四五7
上山打老虎7
一二三四五8
上山打老虎8
一二三四五9
上山打老虎9
Process finished with exit code 0
三、总结
以上举例了两个创建线程的方法。