Java多线程(一)

创建线程

创建线程有两种方法:实现Runnable接口、继承Thread类。

 

实现Runnable接口

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
//ThreadTest.java文件
package pac;
 
public class ThreadTest implements Runnable{
	String s;
	int i = 0;
	public ThreadTest(String s){
		this.s = s;
	}
 
	public void run(){
		while(true){
			System.out.println("hello " + s + ": " + i++);
			if(i == 5)break;
		}
	}
}
 
//JavaTest.java
import pac.ThreadTest;
 
public class JavaTest{
	public static void main(String[] argvs){
		Thread t1 = new Thread(new ThreadTest("t1"));
		Thread t2 = new Thread(new ThreadTest("t2"));
		t1.start();
		t2.start();
	}
}

继承Thread类

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
//ThreadTest.java文件
package pac;
 
public class ThreadTest extends Thread{
	String s;
	int i = 0;
	public ThreadTest(String s){
		this.s = s;
	}
 
	public void run(){
		while(true){
			System.out.println("hello " + s + ": " + i++);
			if(i == 5)break;
		}
	}
}
 
//JavaTest.java
import pac.ThreadTest;
 
public class JavaTest{
	public static void main(String[] argvs){
		Thread t1 = new Thread(new ThreadTest("t1"));
		Thread t2 = new Thread(new ThreadTest("t2"));
		t1.start();
		t2.start();
	}
}

可以看到,两种方法都可以实现多线程任务,继承thread类的话,可以使代码更简单,但是java中类只能有一个父类,却可以有很多接口,所以用Runnable接口实现更灵活。可以按需求选择。

Add a Comment

电子邮件地址不会被公开。 必填项已用*标注