你的位置:首页 > Java教程

[Java教程]java 多线程


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   }