简单理解 java 之多线程(实例)
下面是线程的几种状态
一、继承 Thread:
- 自己描述一个类
- 继承父类的 Thread
- 重写 run 方法
- new 一个线程对象,调用 start()方法,让线程进入就绪状态
代码实现示例:
定义一个类
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17public class demo extends Thread {
private String name;
public demo () {
}
public demo (String name) {
this.name = name;
}
//重写run方法
public void run() {
for (int i = 1; i <= 100; i++) {
System.out.println(this.rname +",跑到第" + i + "米啦!"+"该线程名称为:"+ Thread.currentThread());
}
}
}
实现该类
1
2
3
4
5
6
7
8public static void main(String[] args) {
demo demo1 = new demo("博尔特");
demo demo2 = new demo("加特林");
demo demo3 = new demo("键盘侠");
demo1.start();//启动线程
demo2.start();
demo3.start();
}显示效果
二、实现 Runnable:
- 自己描述(定义)一个类
- 实现一个付借款 Runnable
- 重写 run 方法
- new 一个线程对象,需要创建 Thread 将自己定义的对象包进去,然后在调用 start();
代码实现示例:
- 定义一个类
1 | public class runnableDemo implements Runnable { |
实现该类
1
2
3
4
5
6
7
8
9
10
11
12
13public static void main(String[] args) {
//1 创建一个线程对象
runnableDemo runnableDemo1 = new runnableDemo("博尔特");
//2 调用start方法,让线程进入就绪状态,按顺序逐个执行
Thread t1 = new Thread(runnableDemo1);
runnableDemo runnableDemo2 = new runnableDemo("加特林");
Thread t2 = new Thread(runnableDemo2);
runnableDemo runnableDemo3 = new runnableDemo("键盘侠");
Thread t3 = new Thread(runnableDemo3);
t1.start();
t2.start();
t3.start();
}显示效果