在Java中,多线程是一个非常重要的概念,它允许程序同时执行多个任务。这里我将简要介绍Java多线程的基本概念,并给出一个简单的示例来展示如何创建和启动线程。
### Java多线程基本概念
1. **线程(Thread)**:线程是CPU调度的基本单位,它是进程中的一个实体,是CPU分配资源的最小单位,它是比进程更小的独立运行的单位。一个线程可以创建和销毁另一个线程;同一个进程中的多个线程可以并发执行。
2. **多线程(Multi-threading)**:多线程是指程序中包含多个执行流,即在一个时间段内,程序中可以同时执行多个任务。多线程的好处包括提高应用程序的响应速度、充分利用多核CPU的计算资源等。
3. **创建线程**:在Java中,可以通过继承`Thread`类或者实现`Runnable`接口来创建线程。通常推荐使用实现`Runnable`接口的方式,因为Java不支持多重继承,但可以实现多个接口。
### 示例:使用Runnable接口创建线程
// 定义一个实现了Runnable接口的类
class MyThread implements Runnable {
public void run() {
// 这里是线程要执行的任务
System.out.println("线程运行中...");
}
}
public class Main {
public static void main(String[] args) {
// 创建Thread类的实例,把MyThread实例作为构造器的参数
Thread thread = new Thread(new MyThread());
// 启动线程
thread.start();
// 主线程继续执行
System.out.println("主线程继续执行...");
}
}
在这个示例中,我们定义了一个`MyThread`类,它实现了`Runnable`接口并实现了`run`方法。然后,我们在`main`方法中创建了一个`Thread`对象,将`MyThread`的实例作为参数传递给`Thread`的构造器。最后,通过调用`start`方法来启动线程。当线程启动时,它会调用`MyThread`实例的`run`方法来执行线程的任务。
注意:直接调用`run`方法并不会启动新线程,而是会在当前线程中同步执行`run`方法中的代码。要启动新线程,必须调用`Thread`对象的`start`方法。