欢迎访问宙启技术站
智能推送

Java中的多线程函数使用及其实现方法详解

发布时间:2023-07-06 10:48:34

Java中实现多线程的方法有两种,一种是继承Thread类,一种是实现Runnable接口。

1. 继承Thread类:

多线程函数的实现方法之一是继承Thread类并重写其run()方法。重写后的run()方法中放置线程的执行逻辑。继承Thread类的优点是方便线程类直接访问类中的成员变量和方法。

示例代码如下:

public class MyThread extends Thread {
    public void run() {
        // 线程的执行逻辑
    }
}

public class Main {
    public static void main(String[] args) {
        MyThread myThread = new MyThread();
        myThread.start();
    }
}

在上述代码中,创建了一个MyThread类,并继承了Thread类。在MyThread类中重写了run()方法,并在Main类中创建了一个MyThread对象,然后调用其start()方法启动线程。

2. 实现Runnable接口:

另一种多线程函数的实现方式是实现Runnable接口。实现Runnable接口后需要实现其run()方法,并将实现了Runnable接口的类作为参数传递给Thread类的构造方法。实现Runnable接口的优点是可以避免单继承的限制,并且可以更好地实现资源共享。

示例代码如下:

public class MyRunnable implements Runnable {
    public void run() {
        // 线程的执行逻辑
    }
}

public class Main {
    public static void main(String[] args) {
        MyRunnable myRunnable = new MyRunnable();
        Thread thread = new Thread(myRunnable);
        thread.start();
    }
}

在上述代码中,创建了一个MyRunnable类,并实现了Runnable接口。在MyRunnable类中重写了run()方法,并在Main类中创建了一个MyRunnable对象。然后创建一个Thread对象,并将MyRunnable对象作为参数传递给Thread的构造方法,在调用start()方法启动线程。

无论是继承Thread类还是实现Runnable接口,都需要重写run()方法,并在其中放置线程的执行逻辑。线程的启动是通过调用start()方法实现的。

需要注意的是,多线程的执行顺序是由系统调度器决定的,程序员不能准确地控制线程的执行顺序。