线程--实现Runnable接口

实现Runnable接口,创建线程步骤:

1、定义类,并实现Runnable接口

2、重写Runnable接口中的run()方法

3、通过Thread类建立线程对象

4、将实现了Runnable接口的类作为参数传入Thread类的构造函数

5、调用Thread类对象的start()方法,开始调用Runnable子类的run()方法

Class SynDemo implemets Runable
{
    private int i;
    SynDemo(int i){
         this.i = i;
    }
    public void run(){
        while(true){
            if(i > 0){
                   System.out.printlnt(Thread.currentThread().getName()+"==="+i--);
            }
        }
    }
}  

Class TestDemo
{
    public static void main(String[] args){
             SynDemo syn = new SynDemo();//SynDemo 对象不是个线程,所以需要跟Thread类产生关系需要创建一个Thread类,所以需要告诉Thread线程需要运行的代码
            Thread t1 = new Thread(syn);
            Thread t2 = new Thread(syn);
            Thread t3 = new Thread(syn);
            Thread t4 = new Thread(syn); 
 
            t1.start();
            t2.start();
            t3.start();
            t4.start();


    }
}

实现Runnable类和继承Thread的区别:

  java可以多实现,但是只能单继承。

  所以实现Runnable对类的影响不大,继承了Thread后就不能在继承其他类。

  其实Runnable接口的出现就是解决继承一个类后,还需要继承Thread实现多线程,但是java不支持多继承,由此使用接口进行扩展。

  所以基本使用实现Runnable接口创建线程

posted @ 2018-03-04 15:38  弓长张&木子李  阅读(423)  评论(0编辑  收藏  举报