线程 创建和启动线程的两种方式 实现Runnable接口 继承Thread类 重写唯一方法run()

时间:2020-12-08 17:31:59

创建线程的两种方法

1.实现Runnable接口,必须重写Runnable接口的唯一run()方法。

(能实用接口就不要从Thread类继承,实现接口比较的灵活,而继承Thread类实现起来太麻烦)

class Runner1 implements Runnable{      
    public void run(){
       for(int i=0; i<100;i++){
         System.out.println("Runnable1 :" +i);
       }  
}

启动线程的方法(在主程序中)启动线程需要由三步来执行。

    1).首先创建一个自己线程对象    例如 Runner1 r = new Runner1();

    2).new一个Thread对象(例如对象r)   例如Thread t = new Thread(r);

    3).必须调用Thread类的start方法       例如 t.start();

线程 创建和启动线程的两种方式 实现Runnable接口 继承Thread类 重写唯一方法run()

线程 创建和启动线程的两种方式 实现Runnable接口 继承Thread类 重写唯一方法run()


2.从Thread类继承去创建一个线程(不推荐使用)。

class Runner1 extends Thread{
   for(int i=0; i<100;i++){
         System.out.println("Runnable1 :" +i);
       }   
 }

  启动线程 的方法(在主程序中) 这里 启动线程需要由两步来执行

  1).首先创建一个自己线程对象    例如 Runner1 r = new Runner1();

  2).必须调用Thread类的start方法       例如 r.start(); 

线程 创建和启动线程的两种方式 实现Runnable接口 继承Thread类 重写唯一方法run()

线程 创建和启动线程的两种方式 实现Runnable接口 继承Thread类 重写唯一方法run()