1、继承Thread类实现多线程
继承Thread类的方法尽管被我列为一种多线程实现方式,但Thread本质上也是实现了Runnable接口的一个实例,它代表一个线程的实例,并且,启动线程的唯一方法就是通过Thread类的start()实例方法。start()方法是一个native方法,它将启动一个新线程,并执行run()方法。这种方式实现多线程很简单,通过自己的类直接extend Thread,并复写run()方法,就可以启动新线程并执行自己定义的run()方法。例如:
public class MyThread extends Thread {
private String name;
Trans(String name) {
this.name = name;
}
@Override
public void run() { for(int i=0;i<10;i++)
{
System.out.println(name+" "+i);
}
} }
在mian方法里启动
MyThread myThread1 = new MyThread("张三"); MyThread myThread2 = new MyThread("李四");
Thread dd=new Thread(myThread1);
Thread ds=new Thread(myThread2); dd.start(); ds.start();
还有一个方法睡眠!
这是一个类
1 public class Trans extends Thread { 2 private String name; 3 4 Trans(String name) { 5 this.name = name; 6 } 7 @Override 8 public void run() { 9 for (int i = 0; i < 100; i++) { 10 11 12 try { 13 if ((i)%10==0) { 14 System.out.println("-----------------"+i); 15 } 16 Thread.sleep(500); 17 } catch (InterruptedException e) { 18 e.printStackTrace(); 19 } 20 System.out.println(name+" "+i+"秒"); 21 } 22 23 } 24 25 }
接下来是main方法调用
1 public static void main(String[] args) { 2 Trans dsTrans=new Trans("程序暂停0.5秒"); 3 Thread ds=new Thread(dsTrans); 4 ds.start(); 5 }