天天看点

Java实现多线程的两种方式

1:继承Thread类,子类就是线程类,子类中内容就是线程任务;直接创建子类对象,并调用start()方法即可启动线程。

public class MyThread extends Thread{ 

    @Override

    public void run(){ 

         System.out.println("当前线程的名字="+Thread.currentThread().getName());

    } 

}

public class Run {

    public static void main(String[] args) {

        MyThread myThread=new MyThread();

        myThread.start();

        System.out.println("运行结束!");

    }

2:实现Runnable接口,但是实现类不是线程类,而是线程任务类,实现类中的内容是线程任务;在创建Thread对象时,把实现类的对象传进去,最终调用Thread对象的start()方法即可开启新线程。

public class myRunnable implements Runnable {

    public void  run(){

        System.out.println("运行中!");

        Runnable runnable=new myRunnable();

        Thread thread=new Thread(runnable);

        thread.start();

两者的区别:

1:使用Thread的子类来创建线程的话,任务都在Thread的子类中定义。