Java创建线程的几种方法
1.继承Thread类
<1>创建一个MyThread类继承自Thread类
子类要重写run()方法
public class MyThread extends Thread {
private String name;
public MyThread(String name) {
super();
this.name = name;
}
//重写run()方法
@Override
public void run() {
for(int i=1;i<=100;i++) {
System.out.println(name + "下载了" + i + "%");
}
}
}
<2>写一个ThreadTest类测试MyThread类
public class ThreadTest {
public static void main(String[] args) {
MyThread mt1 = new MyThread("肖申克的救赎");
mt1.start();
MyThread mt2 = new MyThread("幸福来敲门");
mt2.start();
}
}
2.实现Runnable接口
<1>创建一个Download类实现Runnable接口
public class Download implements Runnable {
private String name;
public Download(String name) {
super();
this.name = name;
}
@Override
public void run() {
// TODO Auto-generated method stub
for(int i=1; i<=100; i++) {
System.out.println(name + "下载了" + i + "%");
}
}
}
<2>写一个ThreadTest类来测试Download类
public class ThreadTest {
public static void main(String[] args) {
//MyThread mt1 = new MyThread("肖申克的救赎");
//mt1.start();
//MyThread mt2 = new MyThread("幸福来敲门");
//mt2.start();
Thread t1 = new Thread(new Download("肖申克的救赎"));
Thread t2 = new Thread(new Download("幸福来来敲门"));
t1.start();
t2.start();
}
}