在Java中,可以通过两种方式启动多个线程:
下面分别介绍这两种方法的实现方式。
创建一个新的类,继承自Thread
类,并重写run()
方法。然后创建多个该类的对象,调用它们的start()
方法来启动线程。
示例代码:
class MyThread extends Thread {
@Override
public void run() {
// 线程执行的任务
System.out.println("线程" + Thread.currentThread().getName() + "正在运行");
}
}
public class Main {
public static void main(String[] args) {
for (int i = 0; i < 5; i++) {
MyThread myThread = new MyThread();
myThread.start();
}
}
}
创建一个新的类,实现Runnable
接口,并重写run()
方法。然后创建多个Thread
对象,将该类的对象作为参数传递给Thread
的构造函数,再调用start()
方法来启动线程。
示例代码:
class MyRunnable implements Runnable {
@Override
public void run() {
// 线程执行的任务
System.out.println("线程" + Thread.currentThread().getName() + "正在运行");
}
}
public class Main {
public static void main(String[] args) {
for (int i = 0; i < 5; i++) {
MyRunnable myRunnable = new MyRunnable();
Thread thread = new Thread(myRunnable);
thread.start();
}
}
}
以上两种方法都可以实现启动多个线程。但是,实现Runnable
接口的方式更受推荐,因为它可以避免单继承的局限性,使得代码更加灵活和可复用。