Java Runnable接口如何进行代码编写

Java Runnable接口在进行相关编写的时候需要我们不断的学习相关代码。下面我们就来看炫如何才能使用相关的代码。Runnable接口只有一个方法run(),我们声明自己的类实现Runnable接 口并提供这一方法,将我们的线程代码写入其中,就完成了这一部分的任务。

但是Runnable接口并没有任何对线程的支持,我们还必须创建Thread类 的实例,这一点通过Thread类的构造函数public Thread(Runnable target);来实现。下面是一个例子:

 
 
 
  1. public class MyThread implements Runnable  
  2. {   
  3. int count1, number;   
  4. public MyThread(int num)  
  5. {   
  6. numnumber = num;   
  7. System.out.println("创建线程 " + number);   
  8. }   
  9. public void run()  
  10. {   
  11. while(true)  
  12. {   
  13. System.out.println  
  14. ("线程 " + number + ":计数 " + count);   
  15. if(++count== 6) return;   
  16. }   
  17. }   
  18. public static void main(String args[])  
  19. {   
  20. for(int i = 0; i 〈 5;  
  21. i++) new Thread(new MyThread(i+1)).start();   
  22. }   

 

严格地说,创建Thread子类的实例也是可行的,但是必须注意的是,该子类必须没有覆盖 Thread 类的 run 方法,否则该线程执行的将是子类的 run 方法,而不是我们用以实现Runnable 接口的类的 run 方法,对此大家不妨试验一下。

使用 Java Runnable接口来实现多线程使得我们能够在一个类中包容所有的代码,有利于封装,它的缺点在于,我们只能使用一套代码,若想创建多个线程并使各个线程执行不同的代 码,则仍必须额外创建类,如果这样的话,在大多数情况下也许还不如直接用多个类分别继承 Thread 来得紧凑。
 

【编辑推荐】

  1. Java多线程如何解决关键字封锁问题
  2. Java多线程如何创建多个线程
  3. Java多线程优化之偏向锁原理分析
  4. Java多线程初学者指南系列教程
  5. 使用Java多线程实现任务分发
THE END