Thread Runnable

来源:互联网 发布:手机c语言编辑器 编辑:程序博客网 时间:2024/05/16 10:26

在java的程序中使用多线程有两种方式,1种是继承  Thread  类(extends  Thread) ,另一种是实现Runnable 接口(implements  Runnable),

使用方式如下

第一种是extends Thread

public class MyThread extends  Thread{   private  int   a=20;    public MyThread(){}    public void run(){         for(int i=0;i<a;i++){             System.out.pprintln(i);          }     }}public class Main{    public static void main(String[] args){        MyThread   mt=new MyThread();        mt.start();}



使用第二种  implements Runnable

<pre name="code" class="java"><pre name="code" class="java">public class MyThread implements Rnuable{    private int a=20;    public void run(){       for(int i=0:i<a;i++){          System.out.println(I);       }   }}public   class Main{   public static void main(String[] args){        MyThread  my=new MyThread();        new Thread(my).start();   }}



两种的方法的使用就是这样,但是如果看源码的话可以知道  Thread  类  其实也是实现了  Runnable接口的  ,如果使用的线程的话,还是用实现Runnable  接口的方法会好一点,一个是根据java的规则一个类可以实现多个接口,单继承,只能继承一个类。另一个是使用接口的方法可以让资源共享。比如下面的代码

<pre name="code" class="java">public class MyThread implements Rnuable{    private int a=20;    public void run(){       for(int i=0:i<a;i++){          System.out.println(I);       }   }}public class Main{public static void main(String[] args){MyThread  mt=new MyThread();new Thread(mt).start();new Thread(mt).start();new Thread(mt).start();}}

可以使用同一个资源mt对象开三条线程。如果用继承的方法就不能有这种效果。

0 0
原创粉丝点击