通过继承Thread创建线程
public class MyThread extends Thread{
public MyThread(){super();}
public MyThread(String s){super(s);}
public void run(){
for(int i=0;i<10;i++){
System.out.println(getName());
try{
sleep(1000);
}catch(InterruptedException e){}
}
}
public static void main(String[] args){
new MyThread("线程1").start();
new MyThread("线程2").start();
}
}
程序运行结果:
线程1
线程2
线程1
线程2
线程1
线程2
线程2
线程1
线程1
线程2
线程2
线程1
线程2
线程1
线程1
线程2
线程2
线程1
线程2
线程1
通过接口创建线程(由于java语言只支持类的单一继承,若类A已经从其他类中继承,则无法从Thread中继承;但java支持一个类实现多个接口,且一个接口继承多个接口!)
java语言提供Runnable接口用于解决接口问题
public interface Runnable{
public void run();
}
public class MyThread implements Runnable{
public MyThread(){super();}
public void run(){
for(int i=0;i<10;i++){
System.out.println(Thread.currentThread().getName());
try{
Thread.currentThread().sleep(1000);
}catch(InterruptedException e){}
}
}
public static void main(String[] args){
Thread t1 = new Thread(new MyThread(),"线程1");
Thread t2 = new Thread(new MyThread(),"线程2");
t1.start();
t2.start();
}
}
程序运行结果如下:
线程1
线程2
线程1
线程2
线程1
线程2
线程2
线程1
线程1
线程2
线程2
线程1
线程1
线程2
线程2
线程1
线程2
线程1
线程1
线程2
本文介绍了两种在Java中创建线程的方法:一是通过继承Thread类并重写run方法;二是实现Runnable接口,并将其实例传递给Thread构造函数。示例展示了如何启动两个线程并使它们交替打印名称。

被折叠的 条评论
为什么被折叠?



