JAVA多线程的两种实现方式

再JDK中自带了对多线程的支持,实现多线程编程主要有两种方式:

  1. 继承Thread类
  2. 实现Runnable接口

实际上Thread类实现了Runnable接口。

Thread实现方式

该方式需要继承Thread类,并且重写run方法,再run方法中,写线程需要执行的任务的代码,如下:

public class MyThread extends Thread {

    @Override
    public void run() {
        super.run();
        System.out.println("MyThread run");
    }
    
}

测试代码如下:

public class ThreadTest {
    public static void main(String[] args) {
        MyThread myThread = new MyThread();
        myThread.start();
        System.out.println("执行完成!");
    }
}

运行结果如图所示:


运行结果.png

Runnable实现方式

该实现方式需要实现Runnable接口,并重写run方法,再run方法中写任务代码,如下:

public class MyRunnable implements Runnable{

    @Override
    public void run() {
        System.out.println("MyRunnable run");
    }
    
}

测试代码如下:

public class RunnableTest {
    public static void main(String[] args) {
        Runnable runnable = new MyRunnable();
        Thread thread = new Thread(runnable);
        thread.start();
        System.out.println("运行完成!");
    }
}

运行结果如图所示:


运行结果.png

总结

使用集成Thread类的方式来开发多线程应用程序再设计上是有局限性的,因为java是单继承,不支持多继承,所以要改变这种限制,可以使用实现Runnable接口的方式来实现多线程技术。

你可能感兴趣的:(JAVA多线程的两种实现方式)