首页 > 技术文章 > java--多线程之Runnable

plxx 2013-10-14 15:48 原文

引读:

  上一篇博文中讲了Thread的继承,存在一个问题就是,如果类本身已经继承了某个父类,又要继承Thread,导致多重继承。

  【但是我们知道接口是实现多重继承的重要方式】。java提供了Runnable接口。该接口中的方法run(),来实现创建线程。

 1 package Test;
 2 
 3 class CTest implements Runnable{
 4     private String idString;
 5     public CTest(String string ){
 6         idString = string;
 7     }
 8     public void run(){
 9         for (int i = 0; i < 4; i++) {
10             for(int j = 0;j<100000000;j++);
11             System.out.println(idString+" is runing");
12         }
13     }
14 }
15 public class Demo3{
16     public static void main(String[] args) {
17         CTest dog = new CTest("doggy");
18         CTest cat = new CTest("kitty");
19         Thread t1 = new Thread(dog);
20         Thread t2 = new Thread(cat);
21          t1.start();
22          t2.start();
23     }
24 }


通过创建的Thread实例对象t1 t2来创建线程。

【通过实现Runnable的方法来实现多线程】
   在Runnable接口中并没有start()方法,只有一个run()方法,所以一个类实现了Runnable接口也必须用Thread类中的start()方法来启动多线程。

推荐阅读