请举例说明java代码中是如何创建线程的

请举例说明java代码中是如何创建线程的

作者:William Gu发布时间:2026-02-10阅读时长:0 分钟阅读次数:5

用户关注问题

Q
有哪些方式可以在Java中创建线程?

我想了解除了直接继承Thread类外,还有哪些方法能创建线程?

A

Java中创建线程的多种方式

在Java中,可以通过继承Thread类并重写run()方法来创建线程。另外,还可以实现Runnable接口,将线程执行的代码写在run()方法内,并通过Thread类的构造函数来启动线程。除此之外,使用Callable接口配合FutureTask也能创建线程,Callable允许任务返回结果且能抛出异常。

Q
如何通过实现Runnable接口来创建线程?

具体代码示例和步骤如何,能否说明如何用Runnable启动线程?

A

利用Runnable接口实现线程的示例和步骤

实现Runnable接口需要定义一个类并实现其run()方法,方法内写入线程执行的任务。然后创建该类的实例,将实例作为参数传递给Thread类的构造器。最后调用Thread对象的start()方法即可启动线程。示例代码:

class MyRunnable implements Runnable {
    public void run() {
        System.out.println("线程运行中");
    }
}

public class Test {
    public static void main(String[] args) {
        Thread t = new Thread(new MyRunnable());
        t.start();
    }
}
Q
继承Thread类创建线程有哪些特点和注意事项?

使用Thread子类的方式创建线程时,需要注意什么?

A

继承Thread类创建线程的特点与注意细节

继承Thread类会使线程代码和线程控制代码耦合在一起,这可能降低代码复用性。重写run()方法以定义线程任务,调用start()才能启动新线程。要避免直接调用run()方法,否则线程不会并发执行。不建议多个线程共享一个Thread子类实例,因为Thread实例本身代表一个线程。